Indført donere - en selvhostet donationstjeneste til opgaver


Indført donere - en selvhostet donationstjeneste til opgaver

Features:

  • KYS;
  • selv-vært;
  • ingen gebyrer (for eksempel tager bountysource og gitcoin 10% af betalingen);
  • understøttelse af mange kryptovalutaer (i øjeblikket Bitcoin, Ethereum og Cardano);
  • det forventes (og leveres) at understøtte GitLab, Gitea og andre Git-hostingtjenester i fremtiden.
  • global liste over opgaver fra alle (det vil sige én, på tidspunktet for nyhedsskrivningen) instanser på donate.dumpstack.io.

Arbejdsmekanismen for GitHub fra siden af ​​lagerejeren:

  • (valgfrit), du skal bruge den service, du kan bruge færdiglavet konfiguration til NixOS;
  • skal tilføjes GitHub Action — der kaldes et hjælpeprogram inde, som scanner projektets opgaver og tilføjer/opdaterer en kommentar om den aktuelle tilstand af donationstegnebøger, mens den private del af tegnebøgerne kun gemmes på donationsserveren (i fremtiden med mulighed for at tage den offline for store donationer, for manuel bekræftelse af betaling);
  • i alle aktuelle opgaver (og nye) kommer der en besked fra github-actions[bot] med tegnebogsadresser til donationer (eksempel).

Arbejdsmekanismen for den person, der udfører opgaven:

  • kommentaren til commit angiver præcis, hvilket problem denne commit løser (se. afslutning af problemer ved hjælp af søgeord);
  • brødteksten i pull-anmodningen angiver tegnebogsadresser i et bestemt format (f.eks. BTC{adresse}).
  • Når en pull-anmodning accepteres, sker betalingen automatisk.
  • hvis tegnebøgerne ikke er specificeret, eller ikke alle er specificeret, så foretages betalingen af ​​midler for de uspecificerede tegnebøger til standardpungene (det kan f.eks. være en generel projektpung).

Sikkerhed:

  • angrebsfladen er generelt lille;
  • Baseret på driftsmekanismerne skulle tjenesten være i stand til at sende penge uafhængigt, så at få adgang til serveren vil under alle omstændigheder betyde kontrol over midlerne - løsningen kan kun være at arbejde i en ikke-automatiseret tilstand (f.eks. bekræftelse betalinger manuelt), hvilket er sandsynligt (hvis projektet er vellykket nok til, at nogen kan donere til denne funktionalitet, så er det ikke sandsynligt, men bestemt), at det vil blive implementeret en dag;
  • kritiske dele er tydeligt adskilt (faktisk er dette en enkelt pay.go-fil på 200 linjer), hvilket forenkler gennemgang af sikkerhedskode;
  • koden har bestået en uafhængig sikkerhedskodegennemgang, hvilket ikke betyder fravær af sårbarheder, men reducerer sandsynligheden for deres tilstedeværelse, især i lyset af den planlagte regelmæssighed af anmeldelser;
  • der er også de dele, der ikke er kontrolleret (f.eks. API GitHub/GitLab/etc.), mens mulige sårbarheder i tredjeparts-API'en planlægges lukket med yderligere kontrol, men generelt er problemet i den nuværende økosystem er uløseligt og uden for scope (mulig sårbarhed med f.eks. mulighed for at lukke andres pull-anmodninger og derved tilføje kode til andres projekter – har meget mere globale konsekvenser).

Kilde: linux.org.ru

Tilføj en kommentar