Gestion des utilisateurs avec un fournisseur d'identités externe

Cette rubrique explique comment configurer IDCS en tant que fournisseur d'identités OpenID Connect (OIDC) externe pour Oracle Blockchain Platform Enterprise Edition.

Prérequis

Avant de créer une instance dans Oracle Blockchain Platform Enterprise Edition :

  • Créez un compte d'administrateur dans le fournisseur d'identités sélectionné.
  • Créez les utilisateurs et les groupes requis pour l'administration et l'accès à la chaîne de blocs d'Oracle Blockchain Platform Enterprise Edition.
  • Enregistrez une application client OIDC confidentielle.
  • Obtenez l'ID client, la clé secrète client, l'émetteur, l'autorisation, le jeton, JWKS et les adresses de révocation.
  • Déterminez les noms de réclamation utilisés pour le nom utilisateur, l'ID client et les appartenances aux groupes.

Configurer IDCS

Configurer le client confidentiel

  1. Connectez-vous au domaine d'identité IDCS. Créer un domaine.
  2. Créez une application client confidentielle pour le plan de contrôle Oracle Blockchain Platform Enterprise Edition.
    1. Accédez à Profil, puis à Domaine d'identité et à Applications intégrées.
    2. Sélectionnez Bouton Ajouter une application, puis Application confidentielle, puis Lancer le workflow et indiquez un nom avant de soumettre la création de l'application confidentielle.
    3. Une fois l'application créée, sélectionnez-la et accédez à l'onglet de configuration OAuth. Sélectionnez Modifier la configuration OAuth.
    4. Sélectionnez les options suivantes pour la configuration du serveur de ressources :
      • Configurer cette application comme serveur de ressource maintenant
      • Autoriser l'actualisation du jeton
      • Public principal : obpee-cp
    5. Sélectionnez les options suivantes pour la configuration client :
      • Configurer cette application comme client maintenant
      • Pour Types d'octroi autorisés, sélectionnez
        • Propriétaire de ressource
        • Jeton d'actualisation
        • Code d'autorisation
      • Type de client : Confidentiel
    6. Certificat :
      • Sélectionnez Ignorer le consentement.
      • Adresse adresse IP du client : n'importe où
    7. Stratégie d'émission de jeton:
      • Ressources autorisées : Toutes
  3. Créez des groupes et des utilisateurs dans le domaine. Accédez à Profil, puis à Domaine d'identité, puis à Gestion des utilisateurs.

    Pour plus d'informations sur les groupes et leur utilisation, reportez-vous à la section User Groups and Roles.

  4. Configurez l'URI de redirection requis pour le plan de contrôle et la console de service Oracle Blockchain Platform Enterprise Edition.
  5. Affectez les utilisateurs et les groupes à l'application client confidentielle. Accédez à Application confidentielle, puis à Utilisateurs et à Application confidentielle, puis à Groupes pour ce faire.

Configurer des déclarations de groupe

Pour inclure des appartenances à des groupes dans des jetons d'accès :

  1. Ouvrez la configuration OAuth pour le client confidentiel.
  2. Ajoutez le rôle d'application administrateur de domaine d'identité.
  3. Utilisez un compte administrateur pour obtenir un jeton d'accès via l'adresse de jeton. L'administrateur doit appartenir aux groupes IDCS_Administrators et, le cas échéant, OCI_Administrators.
  4. Utilisez le jeton d'accès pour créer une demande de jeton d'accès personnalisée.
curl -sS -X POST "https://<identity-domain-host>/admin/v1/CustomClaims" \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  --data-binary '{
    "schemas": ["urn:ietf:params:scim:schemas:oracle:idcs:CustomClaim"],
    "name": "group_roles",
    "value": "$user.groups.*.display",
    "expression": true,
    "mode": "always",
    "tokenType": "AT",
    "allScopes": true
  }'

Utilisez group_roles en tant que nom de demande de groupe dans la configuration Oracle Blockchain Platform Enterprise Edition.

Configurer Oracle Blockchain Platform Enterprise Edition

Entrez les valeurs de fournisseur d'identités dans la configuration de fournisseur OIDC externe d'Oracle Blockchain Platform Enterprise Edition.
  1. Ouvrez Blockchain Platform Manager sur https://controlplane.domainname/console/index.html. Votre navigateur peut vous avertir d'un certificat auto-signé.
  2. Connectez-vous à Blockchain Platform Manager à l'aide du nom utilisateur obpadmin et du mot de passe que vous avez fournis lors de l'installation.
  3. Sur la page Configuration, sélectionnez Serveurs d'authentification.
  4. Sélectionnez Ajouter un fournisseur d'identités.
  5. Renseignez les champs de configuration suivants sur la page Ajouter un fournisseur d'identités :
  6. Renseignez les champs de nom de groupe comme requis. Vous pouvez les trouver ici : Groupes
  7. Une fois tous les champs renseignés, cliquez sur Enregistrer et activer.

Assurez-vous que la configuration de l'accès client est activée pour les paramètres de domaine

Assurez-vous que l'option Configurer l'accès client est activée pour les paramètres de domaine. Pour vérifier ou activer ceci :
  1. Accédez à la console IDCS à l'adresse :
    <Domain-URL>/ui/v1/adminconsole
  2. Connectez-vous avec un utilisateur disposant du rôle d'administrateur de domaine d'identité (ou d'un droit d'administration de locataire/domaine équivalent).
  3. Accédez à l'onglet Paramètres, puis à Paramètres de domaine - Certificat de signature d'accès et assurez-vous que l'option Configurer l'accès client est activée.
  4. Si elle est désactivée, activez-la à l'aide de l'option Modifier les paramètres de domaine.

Ajout d'une URL de redirection pour Blockchain Platform Manager

Après vous être déconnecté de Blockchain Platform Manager, lorsque vous tentez de vous y reconnecter, vous passerez par votre nouveau fournisseur d'identités. Pour cela, vous devez ajouter une URL de réacheminement.

Par exemple, si vous utilisez IDCS, procédez comme suit :
  1. Connectez-vous à OCI et accédez à Identity and Security.
  2. Sélectionnez Applications intégrées.
  3. Sélectionnez l'application confidentielle que vous avez créée.
  4. Sélectionnez Configuration OAuth, puis cliquez sur Modifier la configuration OAuth.
  5. Ajoutez une URL de réacheminement à la liste avec l'URL de votre URL Blockchain Platform Manager. Cliquez sur Soumettre.

Remarque :

  • Une fois l'instance créée, vous devrez ajouter une autre redirection pour l'URL de la console Blockchain Platform. Elle est propre à l'instance et ne peut pas être ajoutée tant qu'elle n'a pas été créée.
  • Si vous déployez un exemple d'application, vous devrez ajouter un autre réacheminement pour l'exemple d'URL d'application.