Agent SDK Μυστικά και HMAC Υπογραφή
Προστατέψτε τα διαπιστευτήρια του πράκτορα API και κατανοήστε πώς το SDK δημιουργεί υπογραφές αιτημάτων HMAC-SHA256 με χρονική σήμανση, ανθεκτική στην επανάληψη.
Τα αιτήματα Agent SDK επαληθεύονται με μυστικό συνεργάτη API. Κρατήστε αυτό το μυστικό σε μια αξιόπιστη υπηρεσία υποστήριξης και αφήστε το SDK να δημιουργήσει πεδία υπογραφής όποτε είναι δυνατόν.
Δύο πρωτόκολλα υπογραφής
Η υπογραφή Agent SDK χρησιμοποιεί ταξινομημένα πεδία αιτημάτων, μια χρονική σήμανση που βασίζεται σε δευτερόλεπτα και ένα nonce. Άμεσα αιτήματα Developer API χρησιμοποιούν την ξεχωριστή διαδικασία που περιγράφεται στο Υπογραφή αιτήματος. Μην επαναχρησιμοποιείτε τη μία μορφή ωφέλιμου φορτίου για την άλλη.
Κανόνας υπογραφής
Για Agent SDK αιτήματα:
- Εξαιρέστε το πεδίο
sign. - Παράλειψη πεδίων με κενές τιμές.
- Ταξινομήστε τα υπόλοιπα ονόματα πεδίων με τη σειρά ASCII.
- Ενώστε τα πεδία ως
k=v&k2=v2. - Υπολογίστε την HMAC-SHA256 δεκαεξαδική υπογραφή με
apiSecret.
Οι τιμές του πίνακα σειριοποιούνται ως συμπαγείς JSON πριν από την ένταξη στο ωφέλιμο φορτίο υπογραφής. Για παράδειγμα, το platformUserIds υπογράφει ως ["1188041528"], δίνοντας platformUserIds=["1188041528"] στο k=v ωφέλιμο φορτίο. Διατηρήστε τη σειρά στοιχείων του πίνακα, τα διπλά εισαγωγικά και τα αναγνωριστικά συμβολοσειρών. Μην εισάγετε κενά μορφοποίησης και μην χρησιμοποιείτε Java List.toString() (όπως [1188041528]). Το SDK χειρίζεται αυτόματα αυτήν τη σειριοποίηση.
Το SDK θα πρέπει να δημιουργήσει αυτήν την τιμή από τα ίδια δεδομένα που στέλνει. Η αλλαγή ενός υπογεγραμμένου πεδίου μετά τη δημιουργία υπογραφής προκαλεί την αποτυχία της επαλήθευσης.
SDK-διαχειριζόμενα πεδία
Μυστική αποθήκευση
- Φόρτωση
apiSecretαπό έναν διαχειριστή μυστικών υποστήριξης ή μια προστατευμένη διαμόρφωση χρόνου εκτέλεσης. - Μην τοποθετείτε ποτέ το μυστικό σε πακέτα frontend, εφαρμογές για κινητά, υπολογιστές-πελάτες για υπολογιστές, στιγμιότυπα οθόνης ή εισιτήρια υποστήριξης.
- Διατηρήστε χωριστά τα διαπιστευτήρια για ανάπτυξη, σκηνοθεσία και παραγωγή.
- Περιορίστε την πρόσβαση στις υπηρεσίες και τους φορείς εκμετάλλευσης που το απαιτούν.
- Διορθώστε υπογραφές αιτημάτων, τιμές εξουσιοδότησης και μυστικά από αρχεία καταγραφής.
- Ανάκληση και αντικατάσταση διαπιστευτηρίων όταν υπάρχει υποψία έκθεσης.
Προστασία ρολογιού και επανάληψης
Το SDK περιλαμβάνει τα timestamp και nonce για μείωση του κινδύνου επανάληψης. Διατηρήστε συγχρονισμένα τα ρολόγια του backend και μην επαναχρησιμοποιείτε ένα μη αυτόματο κατασκευασμένο μη αυτόματο. Εάν η επικύρωση υπογραφής αποτύχει, επιβεβαιώστε το διαμορφωμένο μυστικό, τον χρόνο διακομιστή, τα σειριακά πεδία και το περιβάλλον πριν προσπαθήσετε ξανά.