Requisito della chiave API crittografata
I ibm-appconfiguration-js-client-sdk e 'ibm-appconfiguration-react-client-sdk richiedono ora agli utenti di fornire un'APIK SDK del client crittografato invece di un'APIK di testo normale per migliorare
la sicurezza. Questo aiuta a prevenire l'esposizione dell'APIKey durante l'ispezione della pagina web attraverso i browser.
Per garantire la massima sicurezza, utilizziamo un nonce casuale durante il processo di crittografia. Di conseguenza, ogni volta che si cripta l'APIKey, il valore criptato sarà diverso, ma il testo in chiaro sottostante rimane lo stesso quando viene decriptato durante l'autenticazione.
Passaggi per generare e utilizzare l'APIK del client SDK crittografato
- Ottenere la chiave API semplice:
- Andare alla sezione Credenziali di servizio dell'istanza App Configuration sulla dashboard di IBM Cloud.
- Generare una APIKey del ruolo '
Client SDKe copiare l'apikey dalle credenziali del servizio.
- Crittografare la chiave API:
-
Utilizzare il seguente endpoint API per criptare la chiave API semplice
POST /apprapp/feature/v1/instances/<guid>/encryptEsempio:
https://eu-gb.apprapp.cloud.ibm.com/apprapp/feature/v1/instances/720f9034-c990-4305-96d6-4f65ffacef2c/encrypt -
Nel corpo della richiesta, includere la propria APIKey semplice come segue:
{ "client_sdk_apikey": "your_plain_apikey" } -
La risposta conterrà la chiave API crittografata AES-256.
-
- Aggiornamento del codice:
SDK Javascript: Aggiornare il codice di inizializzazione:
- Sostituire l'uso della APIKey semplice nell'applicazione con la APIKey crittografata. Di seguito è riportato un esempio aggiornato di come inizializzare l'SDK utilizzando l'APIKey crittografata:
const region = AppConfiguration.REGION_US_SOUTH; // Specificare la propria regione
const guid = '<guid>'; // ID dell'istanza dalle credenziali del servizio
const apikey = '<encrypted_apikey>'; // Usa l'APIKey criptata
const collectionId = 'airlines-webapp'; // Your collection ID
const environmentId = 'dev'; // Your environment ID
const appConfigClient = AppConfiguration.getInstance();
async function initialiseAppConfig() {
appConfigClient.init(region, guid, apikey); // Initialize with encrypted APIKey
await appConfigClient.setContext(collectionId, environmentId);
}
try {
await initialiseAppConfig();
console.log("App configuration SDK initialized successfully");
} catch (e) {
console.error("Failed to initialize app configuration SDK", e);
}
```
**SDK React:**
Aggiornate il vostro codice AppConfigProvider:
- Sostituire l'uso della APIKey semplice nell'applicazione con la APIKey crittografata. Di seguito è riportato un esempio aggiornato di come inizializzare l'SDK utilizzando l'APIKey crittografata:
``js
import { withAppConfigProvider } da 'ibm-appconfiguration-react-client-sdk';
(async () => {
const AppConfigProvider = await withAppConfigProvider({
region: 'us-south', // Specify your region
guid: '<guid>', // Instance ID from Service Credentials
apikey: '<encrypted_apikey>', // Use the encrypted APIKey
collectionId: 'airlines-webapp', // Your collection ID
environmentId: 'dev' // Your environment ID
})
ReactDOM.render(
<AppConfigProvider>
<YourApp />
</AppConfigProvider>,
document.getElementById('root')
);
})();
```
## Utenti esistenti: Aggiornamento richiesto {: #ac-existing-users-update}
Se si utilizza già una APIKey semplice, aggiornare l'applicazione per generare e utilizzare la APIKey crittografata come indicato nei passaggi precedenti.
<!-- v2.4.8 : caits-prod-app-clouddocs_cloud-docs-app-configuration_20250808T171821-4_en_it -->