Création du canal Oracle Android
Vous pouvez configurer le canal Android pour qu'il se connecte au serveur de discussion Oracle en deux modes : mode non authentifié et mode authentifié (pour protéger l'accès au canal).
- Mode non authentifié : utilisez le mode non authentifié lorsque le client ne peut pas générer de jetons JWT signés, lorsqu'aucune méthode d'authentification n'est configurée, ou lorsque l'application client est déjà sécurisée et visible par les utilisateurs authentifiés.
- Mode authentifié : l'authentification est appliquée à l'aide de jetons Web JSON (JWT). Le serveur back-end du client génère le jeton JWT, qui est ensuite transmis au kit SDK Oracle Android. Ce jeton est utilisé pour chaque demande adressée à un serveur vocal, de texte ou de pièce jointe ODA.
RemarqueLorsque l'application doit se connecter à un serveur ODA, elle demande d'abord le jeton du serveur back-end, puis l'ajoute à l'en-tête d'autorisation. Le serveur ODA valide le jeton, évalue les déclarations, puis ouvre le socket ou rejette la connexion.
Pour protéger l'accès au canal, le jeton doit toujours être généré par un serveur distant. Il ne doit jamais être généré dans l'application client.
Le jeton JWT présente les déclarations suivantes :
channelId
et userId
, ainsi que les noms de déclaration iat
(heure d'émission) et exp
(délai d'expiration). iat
indique le moment où le jeton a été émis. Cette valeur doit être un nombre représentant les secondes écoulées depuis la période UNIX. exp
doit être un nombre représentant les secondes écoulées depuis la période UNIX. Nous vous recommandons de définir le délai d'expiration sur au moins 30 minutes après l'heure d'émission (iat
). L'en-tête de jeton ressemble à ceci :{
"alg": "HS256",
"typ": "JWT"
}
Voici un exemple de corps de jeton :{
"iat": 1569828182,
"exp": 1569831782,
"channelId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"userId": "John"
}
Remarque
Le jeton illustré par cet exemple n'est pas signé. Les jetons réels sont signés par la clé secrète du canal.
Le jeton illustré par cet exemple n'est pas signé. Les jetons réels sont signés par la clé secrète du canal.
Configuration du canal Oracle Android
Pour configurer le canal Oracle Android, procédez comme suit :
- Choisissez Développement, puis Canaux dans le menu.
- Choisissez Utilisateurs.
- Cliquez sur Ajouter un canal, puis sur Oracle Android en tant que type de canal.
- Renseignez les champs de la boîte de dialogue suivante :
- Saisissez le nom du canal.
- Pour les connexions authentifiées, procédez comme suit :
- Activez l'option Authentification client activée afin de déterminer si le kit SDK se connecte à un canal activé pour l'authentification client.
- Dans le champ Expiration de jeton max. (minutes), définissez le délai maximal pour le jeton JWT.
- Pour les connexions non authentifiées, procédez comme suit :
- Désactivez l'option Authentification client activée.
- Définissez le délai d'expiration de la session.
- Cliquez sur Créer. Oracle Digital Assistant génère l'ID de canal et la clé secrète dont vous avez besoin pour initialiser le kit SDK. Conservez ces informations.
- Acheminez le canal vers votre brique ou votre assistant numérique.
- Activez l'option Canal activé.