curl Γρήγορη Εκκίνηση
Αυτός ο οδηγός σας καθοδηγεί στον έλεγχο ταυτότητας για το VaultPAM API και στη δημιουργία του πρώτου σας αιτήματος χρησιμοποιώντας curl.
Προαπαιτούμενα:
curlεγκατεστημένο (έκδοση 7.58 ή νεότερη)jqεγκατεστημένο (για ανάλυση απαντήσεων JSON — προαιρετικό αλλά συνιστάται)- Λογαριασμός VaultPAM με ενεργοποιημένη πρόσβαση API
Βήμα 1 — Ορίστε το βασικό URL σας
export VAULTPAM_BASE_URL="https://api.vaultpam.com"
Αντικαταστήστε την τιμή με το πραγματικό URL του VaultPAM control-plane εάν χρησιμοποιείτε ανάπτυξη στις δικές σας εγκαταστάσεις.
Βήμα 2 — Πραγματοποιήστε έλεγχο ταυτότητας
# Διαβάστε τα διαπιστευτήρια με ασφάλεια — μη δεσμεύσετε ποτέ tokens στον έλεγχο προέλευσης (δείτε auth-flow.md#token-storage)
read -p "Email: " VAULTPAM_EMAIL
read -s -p "Password: " VAULTPAM_PASSWORD
echo
RESPONSE=$(curl --silent --fail-with-body \
--url "${VAULTPAM_BASE_URL}/api/v1/auth/login" \
--header "Content-Type: application/json" \
--data "{\"email\": \"${VAULTPAM_EMAIL}\", \"password\": \"${VAULTPAM_PASSWORD}\"}")
# Εξαγάγετε το access token
VAULTPAM_TOKEN=$(echo "${RESPONSE}" | jq -r '.access_token')
echo "Authenticated. Token expires in $(echo "${RESPONSE}" | jq '.expires_in') seconds."
Αποθηκεύστε το VAULTPAM_TOKEN σε μια μεταβλητή περιβάλλοντος ή σε έναν διαχειριστή μυστικών — μη το κωδικοποιήσετε σε σενάρια. Δείτε Token Storage.
Βήμα 3 — Λάβετε το ενεργό organization σας
ORG_RESPONSE=$(curl --silent --fail-with-body \
--url "${VAULTPAM_BASE_URL}/api/v1/org/memberships" \
--header "Authorization: Bearer ${VAULTPAM_TOKEN}")
VAULTPAM_ORG_ID=$(echo "${ORG_RESPONSE}" | jq -r '.active_org_id')
echo "Active org: ${VAULTPAM_ORG_ID}"
Βήμα 4 — Καταχωρίστε τα safes σας
curl --silent --fail-with-body \
--url "${VAULTPAM_BASE_URL}/api/v1/safes" \
--header "Authorization: Bearer ${VAULTPAM_TOKEN}" \
--header "X-Active-Org-Id: ${VAULTPAM_ORG_ID}" \
| jq '.'
Μια επιτυχής απάντηση επιστρέφει έναν πίνακα JSON αντικειμένων safe.
Χειρισμός σφαλμάτων
Το curl --fail-with-body εξέρχεται με κωδικό μη-μηδενικό σε απαντήσεις HTTP 4xx/5xx και εκτυπώνει το σώμα της απάντησης. Περιστοιχίστε τις κλήσεις σας σε ελέγχους σφαλμάτων:
if ! SAFES=$(curl --silent --fail-with-body \
--url "${VAULTPAM_BASE_URL}/api/v1/safes" \
--header "Authorization: Bearer ${VAULTPAM_TOKEN}" \
--header "X-Active-Org-Id: ${VAULTPAM_ORG_ID}"); then
echo "Request failed: ${SAFES}" >&2
exit 1
fi
echo "${SAFES}" | jq '.'
Κοινοί κωδικοί κατάστασης:
| Κωδικός | Σημασία |
|---|---|
401 Unauthorized | Το token είναι απών, έχει λήξει ή δεν είναι έγκυρο. Πραγματοποιήστε εκ νέου έλεγχο ταυτότητας. |
403 Forbidden | Το token δεν διαθέτει το απαιτούμενο scope για αυτό το endpoint. |
429 Too Many Requests | Υπερβάθηκε το όριο ταχύτητας. Ελέγξτε την κεφαλίδα retry-after. |
500 Internal Server Error | Παροδικό σφάλμα διακομιστή. Δοκιμάστε ξανά με backoff. |
Συνειδητοποίηση ορίου ταχύτητας
Ελέγξτε τις κεφαλίδες της απάντησης για να παρακολουθήσετε τον προϋπολογισμό σας:
curl --silent --fail-with-body --include \
--url "${VAULTPAM_BASE_URL}/api/v1/safes" \
--header "Authorization: Bearer ${VAULTPAM_TOKEN}" \
--header "X-Active-Org-Id: ${VAULTPAM_ORG_ID}" \
| grep -i "x-ratelimit"
Δείτε Rate Limits για λεπτομέρειες σχετικά με στρατηγικές backoff.
Επόμενα βήματα
- Authentication Flow — πλήρης κύκλος ζωής token, PATs και ασφαλή αποθήκευση
- Python Quickstart — ίδια ροή χρησιμοποιώντας Python
- TypeScript Quickstart — ίδια ροή χρησιμοποιώντας Node.js
- Rate Limits — κατανοήστε τις κεφαλίδες
x-ratelimit-*