Μετάβαση στο περιεχόμενο

Μυστικά

Ένα έργο Restorm είναι φτιαγμένο για να γίνεται commit. Τα μυστικά, όμως, δεν πρέπει ποτέ να μπαίνουν μέσα του. Ο τύπος τιμής Μυστικό απαντά σε αυτή την ανάγκη: η μεταβλητή καταγράφει μια αναφορά προς μια πηγή, ποτέ την ίδια την τιμή.

Επιλέξτε τον τύπο Μυστικό σε μια μεταβλητή, έπειτα την πηγή. Το αρχείο του έργου περιέχει τότε μόνο το αναγνωριστικό της πηγής και τις παραμέτρους της. Η τιμή επιλύεται στην κύρια διεργασία, τη στιγμή της εκτέλεσης.

Δύο μεταβλητές περιβάλλοντος τύπου Μυστικό (petstore_auth_token, api_key): το κελί φέρει τον δείκτη $= και τα κουμπιά ανανέωσης, επεξεργασίας της ανάκτησης και κλειδώματος — δίπλα σε μια μεταβλητή τύπου συμβολοσειράς

Τι προστατεύει ο τύπος Μυστικό

Section titled “Τι προστατεύει ο τύπος Μυστικό”

Ένα μυστικό παραμένει ορατό μέσα από την εφαρμογή: ο επεξεργαστής περιβαλλόντων, οι προβολές της επιλυμένης τιμής, η εσωτερική κονσόλα και τα αποσπάσματα κώδικα εμφανίζουν την τιμή του. Είναι το δικό σας μυστικό, το γνωρίζετε ήδη — ο τύπος Μυστικό δεν επιδιώκει να σας το κρύψει.

Αυτό που εγγυάται είναι ότι η τιμή:

  • δεν μπαίνει ποτέ στα αρχεία που φεύγουν από το μηχάνημά σας — δεν γράφεται στο έργο .restorm, επομένως δεν γίνεται ποτέ commit, δεν ωθείται σε αποθετήριο και δεν ενσωματώνεται σε εξαγωγή·
  • δεν μεταδίδεται σε μη εξουσιοδοτημένη υπηρεσία τρίτου — οι εξερχόμενοι προορισμοί περνούν από το τείχος προστασίας.

Μεταβλητή περιβάλλοντος του συστήματος (envVar)

Section titled “Μεταβλητή περιβάλλοντος του συστήματος (envVar)”

Διαβάζει μια μεταβλητή περιβάλλοντος του λειτουργικού συστήματος. Μία μόνο παράμετρος: το όνομα της μεταβλητής.

Είναι η πηγή που πρέπει να προτιμάτε σε συνεχή ενσωμάτωση: το μυστικό εισάγεται από το θησαυροφυλάκιο του CI σας, και το Restorm απλώς το διαβάζει.

Terminal window
export API_TOKEN=""
restorm --open projet.restorm --run "Tests" --headless

Αρχείο μυστικών (envFileSecret)

Section titled “Αρχείο μυστικών (envFileSecret)”

Διαβάζει — και γράφει — ένα αρχείο restorm.env τοποθετημένο δίπλα στο έργο. Είναι η τοπική λειτουργία: το αρχείο μένει στο μηχάνημά σας και προστίθεται στο .gitignore.

Σε αντίθεση με την προηγούμενη πηγή, αυτή είναι εγγράψιμη: μπορείτε να εισαγάγετε την τιμή από το Restorm, και αυτή αποθηκεύεται στο αρχείο μυστικών και όχι στο έργο.

Οι επιλυμένες τιμές αποθηκεύονται σε προσωρινή μνήμη. Αφού αλλάξετε ένα μυστικό από έξω (εναλλαγή ενός token, τροποποίηση του αρχείου .env), χρησιμοποιήστε την Ανανέωση περιβάλλοντος για να αδειάσετε την προσωρινή μνήμη και να ξαναδιαβάσετε όλες τις πηγές.

Το Restorm αφαιρεί τα μυστικά από όσα γράφει στον δίσκο:

Τα εργαλεία MCP, αντιθέτως, λαμβάνουν την επιλυμένη τιμή, όπως και το υπόλοιπο της εφαρμογής: ο πράκτορας χειρίζεται το Restorm εκ μέρους σας, με τα δικά σας μυστικά. Οι παραπάνω εγγυήσεις παραμένουν αμετάβλητες — η τιμή δεν γράφεται ούτε στο έργο ούτε σε μια εξαγωγή, και δεν φεύγει προς μη εξουσιοδοτημένη υπηρεσία τρίτου.

  1. Προσθέστε τα restorm.env και *.responses.zip στο .gitignore σας.
  2. Σε CI, χρησιμοποιήστε το envVar αντί για το αρχείο μυστικών.
  3. Ο κωδικός πρόσβασης ενός εγγενούς πρωτοκόλλου (MQTT, AMQP, Redis, Kafka) δέχεται επίσης τιμή τύπου Μυστικό — μη γράφετε αυτούς τους κωδικούς σε καθαρή μορφή μέσα στο αίτημα.