Rôles et ressources des utilisateurs

IBM® Key Protect for IBM Cloud® prend en charge un système de contrôle d'accès centralisé qui s'appuie sur IBM Cloud® Identity and Access Management pour vous aider à affecter à vos utilisateurs les rôles et accès appropriés pour votre compte, les instances de service, les clés de chiffrement et les fichiers de clés.

Key Protect étant un système de gestion de clés qui, de par sa nature, implique le chiffrement de données importantes et souvent confidentielles, il est essentiel que la structure des droits sur le compte, les instances de service, les clés de chiffrement et les fichiers de clés soit à la fois puissante et flexible. A cette fin, les rôles IBM Cloud® Identity and Access Management peuvent être affectés selon différentes combinaisons, en fonction du niveau d'administration en question.

Ces différents types d'accès sont analogues à de nombreux types de situations de la vie. Une personne peut être le fondateur et le PDG d'une entreprise, mais n'être qu'un membre régulier d'un club local, et n'avoir aucune autorité pour dresser des contraventions. De la même manière, les rôles Key Protect sont affectés dans le contexte d'une partie spécifique de Key Protect, bien que pour simplifier les choses, Key Protect définit des rôles « par défaut » sur certaines ressources, sauf indication contraire (ce dont nous parlerons plus en détail ultérieurement).

Il existe deux zones d'administration principales pour presque tous les produits IBM Cloud : le compte (également appelé « plateforme ») et les instances de service appartenant au compte. Une grande banque, par exemple, peut n'avoir qu'un seul compte (contrôlé par la direction) et des instances de service distinctes pour chacune des unités organisationnelles de la banque (par exemple, une unité peut gérer les comptes bancaires tandis qu'une autre gère les prêts). S'il est probable que les utilisateurs disposant de droits au niveau du compte auront également des droits sur les différentes instances (et peut-être, mais pas toujours, l'inverse), notez que les noms donnés aux rôles de compte sont différents de ceux des rôles au sein des instances de service, reflétant cette différence entre les rôles de compte et les rôles d'instance de service. Pour plus d'informations sur ces rôles, leurs noms et leurs droits, voir IAM roles and actions.

Fonctionnement de l'accès IAM

Une fois que vous avez configuré et organisé des groupes de ressources dans votre compte, vous pouvez tirer parti de deux stratégies pour rationaliser le processus de gestion des accès :

Groupes d'accès
Vous pouvez gérer au minimum le nombre de règles affectées en donnant le même accès à toutes les identités dans un groupe d'accès au lieu d'attribuer le même accès plusieurs fois par utilisateur, par ID de service ou par profil sécurisé. Les utilisateurs doivent être invités dans votre compte pour que vous puissiez les ajouter à un groupe d'accès. Si un utilisateur est qualifié pour un profil de confiance qui est membre du groupe d'accès, vous n'avez pas besoin de l'inviter à votre compte.
Profils sécurisés
Si votre organisation possède un annuaire d'entreprise, les profils sécurisés peuvent accélérer et faciliter la gestion des accès. Cela simplifie le processus de connexion à votre compte IBM Cloud pour les utilisateurs fédérés de votre entreprise. Vous pouvez automatiquement octroyer aux utilisateurs fédérés ou aux ressources de calcul l'accès à votre compte en créant des profils sécurisés. Pour les utilisateurs fédérés, ajoutez des conditions en fonction d'attributs SAML pour définir les utilisateurs fédérés qui peuvent appliquer un profil. Pour les ressources de calcul, spécifiez des ressources spécifiques ou ajoutez des conditions en fonction d'attributs de ressource pour définir les ressources de calcul qui peuvent appliquer un profil. Pour les deux types d'entité, le niveau d'accès accordé est déterminé par les règles d'accès qui sont spécifiées dans chaque profil sécurisé, ou par les groupes d'accès dont le profil sécurisé est membre. Toutefois, avec les profils sécurisés, il n'est pas nécessaire d'inviter les utilisateurs fédérés à rejoindre un compte et seuls les utilisateurs fédérés par un fournisseur d'identité externe peuvent appliquer un profil sécurisé.

Si vous êtes membre de plusieurs groupes d'accès, toutes les règles s'appliquent en même temps lorsque vous accédez à un compte. En tant qu'utilisateur fédéré, vous avez la possibilité d'appliquer différents profils sécurisés, mais vous ne sélectionnez qu'un seul profil à appliquer lorsque vous vous connectez. Par exemple, si vous souhaitez effectuer des tâches de développeur, sélectionnez le profil Developer lors de la connexion. Si vous souhaitez effectuer une tâche liée à l'administrateur, sélectionnez le profil Admin disposant de droits d'accès privilégiés. De cette manière, vous réduisez le risque d'effectuer des actions privilégiées par erreur.

Une règle est composée d'un sujet, d'une cible et d'un rôle. Le sujet de ce scénario est le groupe d'accès ou le profil sécurisé. La cible est ce à quoi le sujet doit pouvoir accéder, par exemple, un ensemble de ressources d'un groupe de ressources, une instance de service, tous les services du compte ou toutes les instances d'un service. Le rôle définit le niveau d'accès qui est octroyé.

Pour plus d'informations sur le fonctionnement des rôles de plateforme et de services dans Key Protect, consultez Rôles de plateforme et rôles de service.

Meilleures pratiques

Le nombre total de règles autorisées sur un compte est limité. Vous pouvez utiliser quelques stratégies pour éviter d'atteindre la limite et pour réduire le temps passé à gérer les accès pour les identités dans votre compte (utilisateurs, ID de service ou profils sécurisés) :

  • Utilisez le principe du moindre privilège et affectez uniquement l'accès qui est nécessaire. Ainsi, vous garantissez que les identités dans votre compte ne peuvent effectuer que les actions que vous autorisez. Par exemple, plutôt que le propriétaire du compte partageant ses données d'identification, qui, par défaut, leur donne un accès d'Administrateur et de Gestionnaire sur toutes les ressources de leur compte, créez de nouvelles règles pour les utilisateurs qui ont besoin d'accéder au compte et à chaque instance de service (et ses clés associées).
  • Ajoutez des ressources à un groupe de ressources pour réduire davantage le nombre de règles requises. Par exemple, une équipe peut travailler sur un projet qui utilise des ressources spécifiques dans votre compte. Ajoutez les membres de l'équipe à un groupe d'accès ou un profil sécurisé avec une règle qui n'octroie l'accès qu'aux ressources d'un groupe de ressources spécifique. Ainsi, il n'est pas nécessaire d'affecter une règle à chaque ressource pour chaque membre d'équipe. Pour plus d'informations sur l'affectation d'un accès à granularité fine, voir assign fine-grained access to a single key.
  • Utilisez des groupes d'accès afin de simplifier la gestion des accès pour les identités qui nécessitent le même niveau d'accès. Vous pouvez configurer un groupe d'accès pour lequel une règle spécifique est définie, puis ajouter ces identités au groupe. Si les membres du groupe nécessitent un accès supplémentaire ultérieurement, il suffit de définir une nouvelle règle pour le groupe d'accès.
  • Utilisez des étiquettes de gestion des accès pour contrôler l'accès aux ressources dans votre compte en fonction des besoins. En affectant l'accès uniquement aux ressources auxquelles sont associées des étiquettes spécifiques, vous évitez de nombreuses mises à jour de vos règles définies. Pour plus d'informations, voir Contrôle de l'accès aux ressources à l'aide d'étiquettes.
  • Utilisez des profils sécurisés pour octroyer automatiquement aux utilisateurs fédérés et ressources de calcul l'accès à votre compte. Ainsi, les utilisateurs fédérés peuvent être mappés à un ou plusieurs profils sécurisés lors de la connexion en évaluant les attributs basés sur SAML pour déterminer les profils auxquels ils peuvent s'appliquer. L'utilisation de profils sécurisés pour les ressources de calcul permet d'éviter le stockage des données d'identification pour exécuter des applications, ainsi que la gestion et la rotation des données d'identification. Vous pouvez également ajouter des profils sécurisés aux groupes d'accès afin de tirer parti de l'ensemble de règles que vous avez déjà créées.
  • Audit régulier qui peut gérer le contrôle d'accès et supprimer les ressources clés. Les erreurs et l'utilisation abusive par des utilisateurs disposant de droits élevés pouvant endommager votre compte, vos instances de service et les données protégées par des clés dans votre instance de service, vérifiez que l'accès approprié est maintenu en auditant les utilisateurs disposant de ces rôles. N'oubliez pas que toutes les nouvelles clés, les nouveaux fichiers de clés ou instances de service créés sont soumis par défaut aux définitions de rôle existantes. Si une nouvelle clé ne doit pas être accessible ou modifiée par un nouvel utilisateur affecté en tant que Gestionnaire de l'instance, cette restriction doit être spécifiquement affectée, car les gestionnaires d'instance ont accès à toutes les clés d'une instance par défaut, et peuvent notamment supprimer une clé.

Qu'est-ce qu'une bonne stratégie de groupe d'accès ?

Un groupe d'accès est une organisation d'utilisateurs, d'ID de service et de profils sécurisés dans un groupe auquel vous pouvez accorder le même accès IAM. Toutes les identités d'un groupe d'accès héritent du même accès.

Vous pouvez logiquement affecter un accès à vos groupes de ressources et aux ressources incluses en créant un groupe d'accès par niveau d'accès requis. Ensuite, vous pouvez mapper chaque groupe d'accès aux groupes de ressources précédemment créés. Par exemple, pour contrôler l'accès au projet CustApp, vous pouvez créer les groupes d'accès suivants :

  • Auditor-Group
  • Developer-Group
  • Admin-Group

Pour Auditor-Group, affectez deux règles d'accès qui octroient les droits d'accès Afficheur aux ressources et aux groupes de ressources CustApp-Test et CustApp-Prod. Pour Developer-Group, affectez deux règles d'accès qui octroient les droits d'accès Editeur aux ressources et aux groupes de ressources CustApp-Dev et CustApp-Test. Pour Admin-Group, affectez trois règles d'accès qui octroient les droits d'accès Administrateur aux ressources et aux groupes de ressources CustApp.

Vous pouvez accorder les droits d'accès Administrateur sur tout ce que contient un compte en créant un groupe d'accès et en lui affectant deux règles. Pour créer la première règle, sélectionnez Tous les services activés pour l'identité et l'accès dans Compte avec le rôle de plateforme administrateur et le rôle de service de gestionnaire. Pour créer la deuxième règle, sélectionnez Tous les services de gestion de compte avec le rôle Administrateur affecté.

Rôles de plateforme et rôles de service

Le mot « objet » est utilisé dans cette section comme un terme général pour des éléments tels que des clés, des fichiers de clés, des instances de service ou des comptes.

Comme mentionné précédemment, les rôles existent à la fois au niveau de la plateforme (compte) et du service. Si vous n'êtes pas certain de ce qu'une plateforme ou un rôle de service permet à un utilisateur de faire, n'oubliez pas que les rôles de plateforme interagissent principalement avec les services IBM Cloud tels que le contrôleur de ressources ou Cloud Identity and Access Management. Les rôles à l'intérieur d'un service, en revanche, interagissent principalement avec l'API pertinente, qui dans ce cas est l'API Key Protect. Pour cette raison, comme vous le verrez, les rôles de plateforme ont une utilisation limitée à l'intérieur de vos instances de service (dans le cas du rôle Administrateur). Ces rôles peuvent uniquement créer une règle d'accès pour un objet particulier, tel qu'un fichier de clés.

Rôles de plateforme

  • Administrateur : Possède tous les droits sur un objet particulier et ses objets "enfant" (par exemple, les clés sont des objets enfant d'instances), y compris le droit d'inviter de nouveaux utilisateurs et d'affecter des rôles sur l'objet (seuls les administrateurs peuvent affecter des rôles). Notez que les administrateurs ne disposent pas de rôles de service par défaut. Ils peuvent toutefois s'affecter des rôles.
  • Éditeur : Peut afficher, créer et supprimer des instances au niveau du compte, mais ne peut pas inviter de nouveaux utilisateurs. A une utilisation limitée pour les objets au sein d'une instance de service, tels que les clés, au-delà de la possibilité de les afficher.
  • Opérateur : Peut afficher des instances au niveau du compte, mais ne peut pas les modifier. A une utilisation limitée pour les objets au sein d'une instance de service, tels que les clés, au-delà de la possibilité de les afficher.
  • Afficheur : peut afficher des instances au niveau du compte, mais ne peut pas les modifier. A une utilisation limitée pour les objets au sein d'une instance de service, tels que les clés, au-delà de la possibilité de les afficher.

Les rôles de plateforme doivent être affectés sur un compte entier, sur des instances de service particulières ou au sein d'objets à l'intérieur d'une instance de service.

Énumère les rôles de gestion de la plateforme tels qu'ils s'appliquent à Key Protect
Action Afficheur Editeur Opérateur Administrateur
Afficher les instances Key Protect icône de coche icône de coche icône de coche icône de coche
Créer des instances d'Key Protect icône de coche icône de coche
Supprimer des instances d'Key Protect icône de coche icône de coche
Inviter de nouveaux utilisateurs et gérer les règles d'accès icône de coche

Alors qu'un rôle au niveau du compte donne à un utilisateur des droits particuliers sur les instances de service par défaut, des rôles peuvent également être affectés sur une instance de service particulière. Par exemple, un compte Éditeur (qui peut afficher, créer et supprimer des instances, mais pas affecter des rôles) peut être désigné un Administrateur d'une instance de service particulière, avec la possibilité d'affecter des rôles dans cette instance de service.

Les rôles de service peuvent être appliqués aux trois objets de première classe d'une instance de service : l'instance dans son ensemble, des clés particulières et des fichiers de clés. Tout comme les rôles de compte disposent de droits sur les instances par défaut, les gestionnaires d'instances ont par défaut des droits sur les clés et les fichiers de clés. Toutefois, ces droits peuvent être affectés avec une plus grande granularité si nécessaire, par exemple en donnant à un utilisateur le rôle Gestionnaire sur une clé ou un fichier de clés particulier et un niveau d'autorisation moindre sur l'instance dans son ensemble.

Les rôles de service peuvent être affectés par instance ou pour toutes les instances d'un compte.

Rôles des instances de service

Notez que les droits inclus dans les rôles sont additifs. Un Gestionnaire, par exemple, dispose de tous les droits d'accès qu'un Lecteur, plus d'autres droits. L'exception est le rôle KeyPurge, qui inclut l'action kms.secrets.purge qui ne fait pas partie d'un autre rôle et doit donc être définie explicitement.

  • Gestionnaire : Possède tous les droits sur un objet particulier (par exemple, le gestionnaire d'une clé peut encapsuler, désencapsuler et supprimer la clé, et détient le droit exclusif de lire et mettre à jour des règles Key Protect telles que dualAuthDelete, allowedNetwork, allowedIP, entre autres).
  • **Auteur **: Possède la plupart des droits du gestionnaire concernant l'utilisation d'un objet (y compris la possibilité d'extraire une clé et ses métadonnées), mais il ne peut généralement pas supprimer ou désactiver l'objet.
  • Lecteur : Peut utiliser l'objet (par exemple, les lecteurs de clés peuvent encapsuler et désencapsuler une clé), mais ne peut pas créer, supprimer ou modifier l'objet.
  • ReaderPlus : Possède les mêmes droits que le lecteur, avec la capacité supplémentaire de récupérer le contenu d'une clé standard.
  • KeyPurge : Peut purge des clés au bout de quatre heures.
  • KmipAdapterManager: Possède tous les droits nécessaires pour gérer l'accès aux ressources régies par le protocole KMIP

Le tableau suivant montre le lien entre rôles d'accès au service et autorisations dans Key Protect.

Répertorie les rôles d'accès au service applicables aux principales ressources d' Key Protect
Action Lecteur ReaderPlus Auteur Responsable KeyPurge KmipAdapterManager
Créer une clé icône de coche icône de coche
Importer une clé icône de coche icône de coche
Extraire une clé icône de coche icône de coche icône de coche
Extraire des métadonnées de clé icône de coche icône de coche icône de coche icône de coche
Extraire le total d'une clé icône de coche icône de coche icône de coche icône de coche icône de coche
Répertorier les clés icône de coche icône de coche icône de coche icône de coche icône de coche
Répertorier des versions de clé icône de coche icône de coche icône de coche icône de coche
Encapsuler une clé icône de coche icône de coche icône de coche icône de coche
Désencapsuler une clé icône de coche icône de coche icône de coche icône de coche
Réencapsuler une clé icône de coche icône de coche icône de coche icône de coche
Effectuer la rotation d'une clé icône de coche icône de coche
Désactiver une clé icône de coche
Activer une clé icône de coche
Planifier la suppression d'une clé icône de coche icône de coche
Annuler la suppression d'une clé icône de coche icône de coche
Supprimer une clé icône de coche
Restaurer une clé icône de coche
Correctif d'une clé icône de coche
Clés de synchronisation icône de coche icône de coche
Purger les clés après quatre heures icône de coche
Répertorie les rôles d'accès au service applicables aux ressources du trousseau « Key Protect »
Action Lecteur ReaderPlus Auteur Responsable KeyPurge KmipAdapterManager
Créer un fichier de clés icône de coche icône de coche
Répertorier des fichiers de clés icône de coche icône de coche icône de coche icône de coche icône de coche
Supprimer un fichier de clés icône de coche
Répertorie les rôles d'accès au service tels qu'ils s'appliquent aux ressources de stratégie d' Key Protect
Action Lecteur ReaderPlus Auteur Responsable KeyPurge KmipAdapterManager
Définir des règles de clé icône de coche
Répertorier les règles de clé icône de coche
Définir des règles d'instance icône de coche
Répertorier les règles d'instance icône de coche
Répertorie les rôles d'accès au service applicables aux ressources de jetons d'importation
Action Lecteur ReaderPlus Auteur Responsable KeyPurge KmipAdapterManager
Créer un jeton d'importation icône de coche icône de coche
Extraire un jeton d'importation icône de coche icône de coche
Répertorie les rôles d'accès au service applicables aux ressources d'enregistrement d' Key Protect
Action Lecteur ReaderPlus Auteur Responsable KeyPurge KmipAdapterManager
Création d'un enregistrement[^services-1] icône de coche icône de coche icône de coche icône de coche
Répertorier les enregistrements d'une clé icône de coche icône de coche icône de coche icône de coche
Répertorier les enregistrements de toute clé icône de coche icône de coche icône de coche icône de coche
Mise à jour d'un enregistrement[^services-2] icône de coche icône de coche icône de coche icône de coche
Remplacer un enregistrement[^services-3] icône de coche icône de coche icône de coche icône de coche
Supprimer un enregistrement[^services-4] icône de coche icône de coche icône de coche icône de coche

Le rôle KeyPurge confère uniquement la possibilité de purger les clés et doit être considéré comme un complément d'autres rôles d'accès au service, tels que Gestionnaire.

Répertorie les rôles d'accès au service applicables aux principales ressources d' Key Protect
Action Lecteur ReaderPlus Auteur Responsable KeyPurge KmipAdapterManager
Liste des adaptateurs KMIP icône de coche icône de coche
Créer un adaptateur KMIP icône de coche icône de coche
Récupérer un adaptateur KMIP icône de coche icône de coche
Supprimer un adaptateur KMIP icône de coche icône de coche
Liste des objets KMIP d'un adaptateur KMIP icône de coche icône de coche
Récupérer un objet KMIP à partir d'un adaptateur KMIP icône de coche icône de coche
Supprimer un objet KMIP d'un adaptateur KMIP icône de coche icône de coche
Liste des certificats clients d'un adaptateur KMIP icône de coche icône de coche
Ajouter un certificat client à un adaptateur KMIP icône de coche icône de coche
Récupérer un certificat client d'un adaptateur KMIP icône de coche icône de coche
Supprimer un certificat client d'un adaptateur KMIP icône de coche icône de coche

Les rôles Rédacteur, Lecteur et ReaderPlus n'ont pas accès au protocole KMIP.

Rôles et règles Cloud Identity and Access Management

Bien que la console Key Protect permette aux utilisateurs un contrôle d'accès à granularité fine à l'aide de ces rôles, il peut être utile de se rappeler que ces rôles sont associés à des règles Cloud Identity and Access Management :

  • nom de service (pour Key Protect, toujours kms)
  • ID d'instance de service
  • ID de fichier de clés
  • type de ressource (seul key est pris en charge)
  • ID ressource
  • ID de compte (doit toujours être indiqué dans la règle)

Voici un exemple de règle renvoyée par l'API IAM :

"resources": [
    {
        "attributes": [
            {
                "name": "accountId",
                "value": "$ACCOUNT_ID",
            },
            {
                "name": "serviceName",
                "value": "kms",
            },
            {
                "name": "resourceType",
                "value": "key",
            },
            {
                "name": "resource",
                "value": "$KEY_ID",
            },
            {
                "name": "keyRing",
                "value": "$KEY_RING_ID",
            }
        ]
    }
]

Toute combinaison de ces attributs peut être appliquée dans une règle. Si cette règle est associée au rôle d'administrateur, cela signifie que tout user/service id/access group auquel cette règle s'applique peut créer une règle qui s'applique à une sous-ressource de celle concernée. En d'autres termes, tous les utilisateurs sous-administrateurs ne peuvent avoir qu'un accès égal (exactement les mêmes attributs que ceux indiqués sur leur règle) ou inférieur (exactement les mêmes attributs que ceux indiqués sur leur règle plus les attributs supplémentaires indiqués) à celui de l'administrateur parent.

Etapes suivantes

Les propriétaires de compte et les administrateurs peuvent inviter des utilisateurs et définir des règles de service qui correspondent aux actions Key Protect que les utilisateurs peuvent exécuter.

  • Pour plus d'informations sur l'attribution des rôles utilisateur dans l'interface utilisateur d' IBM Cloud, consultez la section « Gestion des accès IAM ».