Utiliser le contrôle d'accès à l'API d'Oracle avec Oracle Exadata Database Service on Cloud@Customer et Oracle Exadata Database Service on Dedicated Infrastructure

Présentation

Oracle API Access Control permet aux clients de gérer l'accès aux API REST exposées par Oracle Exadata Database Service on Dedicated Infrastructure et Oracle Exadata Database Service on Cloud@Customer. En désignant des API spécifiques comme privilégiées, les clients peuvent s'assurer que l'appel de ces API nécessite l'approbation préalable d'un groupe autorisé dans leur location.

Oracle API Access Control facilite également l'intégration de la vérification en utilisant la technologie Oracle Cloud Infrastructure (OCI) pour appliquer un flux de travail spécifique.

Une personne demande l'accès pour effectuer une opération privilégiée, un approbateur vérifie et approuve l'opération après que le plan de contrôle OCI ait fait passer une ressource d'approbation spéciale à un état approuvé. Cela permet au demandeur d'envoyer une API à une ressource cible et d'effectuer la tâche souhaitée.

Principaux avantages :

Objectifs

Configurer et utiliser le service Oracle API Access Control pour Oracle Exadata Database Service on Cloud@Customer. Similar instructions apply to Oracle Exadata Database Service on Dedicated Infrastructure.

Conditions requises

Tâche 1 : Configurer des utilisateurs et des groupes dans la location OCI

La première étape du contrôle d'accès aux API d'Oracle consiste à configurer des utilisateurs et des groupes dans votre location OCI. La deuxième étape consiste pour ces utilisateurs et groupes à configurer le contrôle et à gérer les demandes.

  1. Connectez-vous à la console OCI, naviguez jusqu'à Identité et sécurité dans votre domaine d'identité par défaut.

  2. Créer un utilisateur et un groupe. Un utilisateur nommé ExaCC Approver a été configuré et cet utilisateur est membre du groupe ExaCC-API-Approver-grp.

    Image 1 : Groupe d'utilisateurs

Tâche 2 : Configurer la politique OCI IAM pour le contrôle de l'accès à l'API Oracle

Dans cette tâche, configurer la politique OCI IAM pour permettre au service de contrôle de l'accès aux API Oracle de fonctionner et pour que le groupe ExaCC-API-Approver-grp gère le service. Les énoncés de politique fournis dans cet exemple permettent au service de fonctionner. La syntaxe d'une politique OCI IAM offre un contrôle détaillé, ce qui permet une plus grande séparation des fonctions.

Exemples de politiques OCI IAM pour le contrôle d'accès à l'API Oracle :

allow group <admin_group/approver_group/managers> to manage privileged-api-family in tenancy
allow any-user TO use database-family IN tenancy where ALL { request.principal.type in ('pactlprivilegedapirequest', 'pactlprivilegedapicontrol') }
allow any-user TO use ons-topics IN tenancy where ALL { request.principal.type in ('pactlprivilegedapirequest', 'pactlprivilegedapicontrol') }
allow group <admin_group/approver_group/managers> to use database-family in tenancy
allow group <admin_group/approver_group/access_request_group> to read domains in tenancy
allow group <admin_group/approver_group/access_request_group> to inspect compartments in tenancy
allow group <admin_group/approver_group/access_request_group> to use ons-topics in tenancy

Image 2 : Politiques

Votre groupe d'approbateurs a besoin de pouvoir utiliser la famille de bases de données, mais n'a pas besoin de la gérer. En outre, le groupe d'approbation doit pouvoir lire les domaines, inspecter les compartiments et utiliser les rubriques d'avis OCI pour les avis.

Pour plus d'informations sur les politiques OCI IAM, voir À propos des types de ressource et des politiques de contrôle d'accès délégué.

Tâche 3 : Contrôler les ressources

Une fois Oracle API Access Control et ses politiques en place, connectez-vous en tant qu'utilisateur Oracle API Access Control pour contrôler les ressources.

  1. Allez à la console OCI, naviguez jusqu'à Oracle Database, Contrôle d'accès à l'API et cliquez sur Créer un contrôle d'API privilégié.

    Image 3 : Contrôle CreateAPI

  2. Sélectionnez le compartiment (ExaCC) et créez un nouveau contrôle.

  3. Entrez un nom et une description pour le contrôle.

  4. Sélectionner un type de ressource : Sélectionnez Infrastructure Exadata pour ce tutoriel.

    • Exadata Cloud Infrastructure for an Oracle Exadata Database Service on Dedicated Infrastructure in OCI or Oracle Multicloud.
    • Infrastructure Exadata pour le service Oracle Exadata Database Service on Cloud@Customer.

    Image 4 : Contrôle CreateAPI

  5. Sélectionner un compartiment d'infrastructure Exadata : L'infrastructure Exadata se trouve dans un compartiment distinct (eccw-infrastructure).

  6. Sélectionner l'infrastructure Exadata : L'infrastructure à contrôler est eccw-infrastructure.

  7. Sélectionnez les API à contrôler pour votre infrastructure.

    Par exemple :

    • Vous pouvez protéger les suppressions de l'infrastructure.
    • Pour une grappe de machines virtuelles, vous pouvez protéger les mises à jour, les suppressions, l'ajout/la suppression de machines virtuelles et la modification de compartiments.
    • Pour les mises à jour de grappe de machines virtuelles, divers attributs peuvent être sélectionnés comme ayant des privilèges, tels que la modification du nombre de coeurs d'UC (qui a une incidence sur le logiciel d'ajustement automatique) ou des clés publiques SSH.
    • Vous pouvez également contrôler :
      • API du répertoire de base de la base de données, par exemple les suppressions.
      • Des API de machine virtuelle, telles que des mises à jour et la création de connexions à la console.
      • API de réseau en grappe de machines virtuelles, notamment les redimensionnements, les mises à jour et les suppressions.
      • Les API de base de données conteneur comprennent les suppressions, les rotations, les mises à jour et les mises à niveau des clés de gestion Transparent Data Encryption.
      • API de base de données enfichable, avec des actions telles que le démarrage/l'arrêt, l'actualisation, la mise à jour et la suppression des bases de données enfichables. Dans cet exemple, nous voulons appliquer des contrôles à la modification du nombre de coeurs d'UC (7a) et à la suppression de la base de données conteneur (7b).

    Note : Les contrôles affectés peuvent être modifiés après la création du contrôle initial, mais les modifications nécessitent également le processus d'approbation du contrôle d'accès à l'API Oracle.

  8. Dans Informations sur l'approbation, sélectionnez Utiliser la politique IAM pour obtenir des informations sur l'approbation. Cela est obligatoire lors de l'exploitation dans une location avec des domaines d'identité.

  9. Facultativement, vous pouvez exiger une deuxième approbation pour les systèmes particulièrement sensibles, nécessitant deux identités distinctes pour approuver une demande d'accès.

  10. Sélectionner un sujet d'avis : Vous devez sélectionner un sujet d'avis OCI pour les avis de demande d'accès et cliquer sur Créer. Après avoir créé le contrôle, la mise en ligne prend quelques minutes.

    Les images suivantes montrent la création d'un sujet d'avis OCI, la création et la configuration d'un abonnement.

    Image 5 : Sujet

    Image 6 : Abonnement

Note : Les enregistrements de vérification OCI sont liés aux compartiments où résident les ressources. Par conséquent, lors de la création de ce contrôle d'accès à l'API Oracle dans le compartiment ExaCC, les enregistrements de vérification liés à la gestion du cycle de vie des contrôles d'API y sont trouvés. Les mises à jour de l'infrastructure Exadata, située dans le compartiment eccw-infrastructure, verront leurs enregistrements de vérification apparaître dans le compartiment eccw-infrastructure.

Tâche 4 : Démontrer l'application du contrôle d'API

Pour démontrer comment l'API contrôle le système, procédez comme suit :

  1. Connectez-vous à la console OCI en tant qu'utilisateur infra-db-admin-user.

  2. Sélectionnez Service Oracle Database sur Cloud at Customer.

  3. Sélectionnez votre grappe de machines virtuelles et votre infrastructure Exadata.

  4. Vous verrez la grappe de machines virtuelles eccw-cl3, avec le contrôle d'accès aux API Oracle activé.

  5. Si vous tentez de modifier le nombre d'ECPU par machine virtuelle directement à partir du menu, l'opération sera refusée car elle n'est pas autorisée pour la ressource courante.

    Image 7 : Ajuster l'ECPU

  6. De même, si vous tentez d'arrêter une base de données, l'opération ne sera pas autorisée.

  7. Pour vérifier l'enregistrement de vérification à partir de la console OCI.

    1. Naviguez jusqu'à Observabilité et gestion.

    2. Sélectionnez Journalisation et cliquez sur Vérification.

    3. Sélectionnez le compartiment ExaCC.

    4. Vérifiez les actions telles que PUT et POST ou les modifications d'état.

    Dans le compartiment eccw-infrastructure, vous verrez une erreur Introuvable (404) indiquant que la vérification du contrôle d'accès à l'API Oracle pour approbation a échoué à la demande.

    Image 8 : Ajuster la vérification des ECPU

Tâche 5 : Créer et approuver une demande d'accès

  1. Allez à la console OCI, naviguez jusqu'à Oracle Database et cliquez sur Contrôle de l'accès à l'API.

  2. Cliquez sur Créer une demande d'accès avec privilèges où vous pouvez créer une demande de mise à jour du nombre de coeurs d'UC.

    1. Compartiment : Sélectionnez ExaCC compartiment.

    2. Numéros de ticket : Ajoutez une référence à un ticket (texte à structure libre).

    3. Type de ressource : Le type de ressource est votre grappe de machines virtuelles.

    4. Sélectionner des opérations privilégiées : Demande de mise à jour de la grappe de machines virtuelles cpuCoreCount. Vous pouvez ajouter d'autres opérations si nécessaire pour une seule fenêtre d'accès.

      Image 9 : Créer une demande d'accès

    5. Vous pouvez demander l'accès à une date future pour la maintenance planifiée ou immédiatement.

    6. Sélectionner un sujet d'avis : Sélectionnez un sujet à aviser et cliquez sur Créer.

      Image 10 : Créer une demande d'accès

    Dans le compartiment où la demande d'accès est créée, elle est à l'état Lancé.

    Image 11 : Créer une demande d'accès

    Si vous tentez de l'approuver vous-même, vous recevrez un message d'erreur indiquant qu'un autre utilisateur doit l'approuver.

  3. Accédez au système en tant qu'utilisateur approbateur ExaCC Approver. Vous pouvez voir les demandes d'accès dans le compartiment.

    Image 12 : Demander l'approbation

    Un avis par courriel sera envoyé aux membres du ExaCC-API-Approver-grp.

    Image 13 : Avis par courriel

  4. Vous pouvez accéder à la demande déclenchée.

    Image 14 : Demander l'approbation

  5. Vérifiez que la demande concerne UpdateVmCluster cpuCoreCount et approuvez-la immédiatement ou sélectionnez une heure future.

    Image 15 : Demander l'approbation

    Image 16 : Demander l'approbation

  6. Une fois la demande d'accès approuvée, retournez à la ressource de grappe de machines virtuelles et mettez à jour le nombre d'ECPU par machine virtuelle. Le système va maintenant autoriser la modification du nombre d'ECPU par machine virtuelle.

Tâche 6 : Vérifier les opérations approuvées

Du point de vue de l'audit.

  1. Allez à la console OCI, naviguez jusqu'à Observabilité et gestion et sélectionnez Vérification.

  2. Naviguez jusqu'au compartiment où la demande d'accès au contrôle d'accès de l'API Oracle est configurée. Voir POSTs et PUTs.

  3. Vous verrez que l'utilisateur infra-db-admin-user a créé une demande d'accès au contrôle d'accès de l'API Oracle.

    Image 17 : Vérification en attente d'approbation

  4. Vous verrez les demandes incorrectes (400) lorsque vous avez tenté de l'approuver vous-même.

    Image 18 : Approbation automatique

    Image 19 : Approbation automatique

  5. Vous verrez que ExaCC Approver a approuvé la demande d'accès.

    Image 20 : Vérification approuvée

De même, lors de la consultation du compartiment eccw-infrastructure, vous observerez la mise à jour de la grappe de machines virtuelles qui s'est produite après l'approbation. Vous pouvez voir le début de la mise à jour de la grappe de machines virtuelles et la vérification du contrôle d'accès à l'API approuvée, indiquant que les API seront envoyées.

Tâche 7 : Révoquer les demandes de contrôle d'accès à l'API Oracle

Une demande de contrôle d'accès d'API Oracle peut être révoquée par la personne qui l'a soumise ou par l'approbateur. Une fois qu'une demande est révoquée, toute tentative d'exécution de l'action est interdite.

Du point de vue de la vérification dans le compartiment eccw-infrastructure, vous pouvez observer les méthodes PUT et POST. Vous verrez les mises à jour de grappe de machines virtuelles qui ont été autorisées après approbation, ainsi que les échecs des mises à jour de grappe de machines virtuelles qui se sont produites en raison de l'échec de la demande d'accès. Lorsque vous vérifiez la gestion du cycle de vie des demandes d'accès elles-mêmes, vous pouvez voir à quel moment la demande a été ouverte, l'erreur 400 pour l'autoapprobation et l'approbation réussie par un autre utilisateur.

Image 21 : Révoquer

Image 22 : Révoquer

Tâche 8 : Modifier ou supprimer des contrôles

Tâche 9 : Terminer l'audit final pour la suppression du contrôle

Du point de vue de la vérification pour la suppression des contrôles.

Image 25 : Vérification finale

Remerciements

Ressources d'apprentissage supplémentaires

Explorez d'autres laboratoires sur le site docs.oracle.com/learn ou accédez à plus de contenu d'apprentissage gratuit sur le canal Oracle Learning YouTube. De plus, visitez education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.

Pour obtenir la documentation sur le produit, visitez Oracle Help Center.