Roblox offre un archivio di segreti per ogni gioco. I segreti sono informazioni sensibili come chiavi API, password e token di accesso che utilizzi per autenticarti con servizi esterni. Ad esempio, se vuoi connetterti a un servizio di analisi o di musica di terze parti, probabilmente dovrai utilizzare una chiave API per autenticarti.
Potresti copiare e incollare la chiave API in uno script o aggiungerla a un archivio dati, ma questi approcci comportano rischi di sicurezza non necessari. La soluzione migliore è utilizzare l'archivio di segreti e accedere alla chiave utilizzando un piccolo set di metodi sicuri.
Aggiungi segreti
Per visualizzare, creare o modificare segreti, devi essere il proprietario del gioco o il proprietario del gruppo. Puoi avere fino a 500 segreti per ogni gioco.
Vai al Creator Dashboard.
Seleziona il tuo gioco, quindi seleziona Segreti ⟩ Crea Segreto.
Inserisci un nome, il segreto e il dominio applicabile.
- Il nome funge da identificatore unico per il segreto, quindi ti consigliamo di usare qualcosa di descrittivo.
- I segreti possono avere una lunghezza massima di 1.024 caratteri. Le chiavi API e i token di accesso dovrebbero provenire dal fornitore del servizio, ma se il segreto è una password, probabilmente l'hai creata tu stesso.
- Puoi usare una sintassi di wildcard limitata per il dominio, come * per qualsiasi dominio (non raccomandato) o *.example.com per qualsiasi sottodominio di example.com. I domini specifici sono ancora meglio, come my.example.com.
Segreti locali
Per motivi di sicurezza, l'archivio di segreti per ogni gioco è disponibile solo per server live o ambienti di collaborative testing. Se cerchi di accedere a un segreto durante il local playtesting, ricevi un errore Can't find secret with given key. Ricevi un errore identico se cerchi di accedere ai segreti da uno script client.
Per specificare segreti per il test locale, vai in Studio e poi vai su File ⟩ Impostazioni Esperienza ⟩ Sicurezza. Puoi creare nuovi segreti e modificare o eliminare segreti esistenti nella sezione Segreti.


Usa segreti
Prima di utilizzare i segreti all'interno del tuo gioco, devi abilitare Consenti richieste HTTP nella sezione Sicurezza della finestra File ⟩ Impostazioni Esperienza di Studio. Poi chiama HttpService:GetSecret() all'interno di uno script server:
local HttpService = game:GetService("HttpService")local testSecret = HttpService:GetSecret("test_secret")
Una parte dell'attrattiva dell'utilizzo degli archivi di segreti è che non puoi stampare accidentalmente un segreto. Invece del segreto stesso, il seguente codice restituisce il nome che hai fornito quando hai creato il segreto:
print(testSecret) --> Secret(test_secret)
Non puoi manipolare la stringa direttamente. Invece, il tipo di dato Secret ti permette di aggiungere un prefisso e un suffisso al segreto per aiutare a formare un URL o inserire contenuto come Bearer:
local HttpService = game:GetService("HttpService")local testSecret = HttpService:GetSecret("test_secret")local prefix = "https://my.example.com/endpoint?apiKey="local suffix = "&user=username"local url = testSecret:AddPrefix(prefix)url = url:AddSuffix(suffix)print(url) --> https://my.example.com/endpoint?apiKey=Secret(test_secret)&user=username
Dopo aver ottenuto un URL con il segreto inserito, puoi effettuare richieste HTTP standard utilizzando metodi come HttpService:RequestAsync(). Naturalmente, puoi ignorare questi metodi e inserire direttamente il segreto in un'intestazione.