Παρουσιάστηκε το donate - μια αυτο-φιλοξενούμενη υπηρεσία δωρεάς για εργασίες


Παρουσιάστηκε το donate - μια αυτο-φιλοξενούμενη υπηρεσία δωρεάς για εργασίες

Χαρακτηριστικά:

  • ΦΙΛΙ;
  • αυτο-φιλοξενείται?
  • χωρίς χρεώσεις (για παράδειγμα, το bountysource και το gitcoin λαμβάνουν το 10% της πληρωμής).
  • υποστήριξη για πολλά κρυπτονομίσματα (προς το παρόν Bitcoin, Ethereum και Cardano).
  • αναμένεται (και παρέχεται) να υποστηρίζει το GitLab, το Gitea και άλλες υπηρεσίες φιλοξενίας Git στο μέλλον.
  • καθολική λίστα εργασιών από όλες (δηλαδή, μία, τη στιγμή της σύνταξης των ειδήσεων) στις donate.dumpstack.io.

Ο μηχανισμός εργασίας για το GitHub από την πλευρά του κατόχου του αποθετηρίου:

  • (προαιρετικό) πρέπει να αναπτύξετε την υπηρεσία, μπορείτε να χρησιμοποιήσετε έτοιμη διαμόρφωση για το NixOS;
  • πρέπει να προστεθεί Δράση GitHub — καλείται ένα βοηθητικό πρόγραμμα που σαρώνει τις εργασίες του έργου και προσθέτει/ενημερώνει ένα σχόλιο σχετικά με την τρέχουσα κατάσταση των πορτοφολιών δωρεών, ενώ το ιδιωτικό μέρος των πορτοφολιών αποθηκεύεται μόνο στον διακομιστή δωρεών (στο μέλλον, με δυνατότητα λήψης εκτός σύνδεσης για μεγάλες δωρεές, για μη αυτόματη επιβεβαίωση πληρωμής).
  • σε όλες τις τρέχουσες εργασίες (και τις νέες) εμφανίζεται ένα μήνυμα από github-actions[bot] με διευθύνσεις πορτοφολιού για δωρεές (παράδειγμα).

Ο μηχανισμός εργασίας από την πλευρά του ατόμου που εκτελεί την εργασία:

  • το σχόλιο στο commit υποδεικνύει ακριβώς ποιο πρόβλημα επιλύει αυτή η δέσμευση (βλ. κλείσιμο ζητημάτων χρησιμοποιώντας λέξεις-κλειδιά);
  • το σώμα του αιτήματος έλξης καθορίζει τις διευθύνσεις πορτοφολιού σε μια συγκεκριμένη μορφή (για παράδειγμα, BTC{διεύθυνση}).
  • Όταν γίνει αποδεκτό ένα αίτημα έλξης, η πληρωμή γίνεται αυτόματα.
  • εάν τα πορτοφόλια δεν καθορίζονται ή δεν καθορίζονται όλα, τότε η πληρωμή των χρημάτων για τα μη καθορισμένα πορτοφόλια γίνεται στα προεπιλεγμένα πορτοφόλια (για παράδειγμα, αυτό θα μπορούσε να είναι ένα γενικό πορτοφόλι έργου).

Ασφάλεια:

  • η επιφάνεια επίθεσης είναι γενικά μικρή.
  • Με βάση τους λειτουργικούς μηχανισμούς, η υπηρεσία θα πρέπει να μπορεί να στέλνει χρήματα ανεξάρτητα, επομένως η απόκτηση πρόσβασης στον διακομιστή θα σημαίνει έλεγχο των κεφαλαίων σε κάθε περίπτωση - η λύση μπορεί να είναι μόνο η εργασία σε μη αυτοματοποιημένη λειτουργία (για παράδειγμα, επιβεβαίωση πληρωμές με μη αυτόματο τρόπο), το οποίο είναι πιθανό (αν το έργο είναι αρκετά επιτυχημένο ώστε κάποιος να κάνει δωρεά για αυτήν τη λειτουργία, τότε δεν είναι πιθανό, αλλά σίγουρα) να εφαρμοστεί κάποια μέρα.
  • Τα κρίσιμα μέρη είναι σαφώς διαχωρισμένα (στην πραγματικότητα, αυτό είναι ένα ενιαίο αρχείο pay.go 200 γραμμών), απλοποιώντας έτσι την αναθεώρηση του κωδικού ασφαλείας.
  • ο κώδικας έχει περάσει από μια ανεξάρτητη αναθεώρηση κώδικα ασφαλείας, η οποία δεν σημαίνει την απουσία τρωτών σημείων, αλλά μειώνει την πιθανότητα παρουσίας τους, ειδικά υπό το φως της προγραμματισμένης κανονικότητας των ελέγχων.
  • υπάρχουν επίσης εκείνα τα μέρη που δεν ελέγχονται (για παράδειγμα, API GitHub/GitLab/κ.λπ.), ενώ πιθανές ευπάθειες στο API τρίτων προγραμματίζεται να κλείσουν με πρόσθετους ελέγχους, ωστόσο, γενικά, το πρόβλημα στην τρέχουσα Το οικοσύστημα είναι άλυτο και εκτός πεδίου εφαρμογής (πιθανή ευπάθεια με, για παράδειγμα, τη δυνατότητα να κλείσουμε τα αιτήματα έλξης άλλων ανθρώπων και να προσθέσουμε έτσι κώδικα σε έργα άλλων - έχει πολύ πιο παγκόσμιες συνέπειες).

Πηγή: linux.org.ru

Προσθέστε ένα σχόλιο