Bastionhost s'intègre au système de compte Alibaba Cloud. Par défaut, le compte Alibaba Cloud agit en tant que super administrateur de Bastionhost. Pour respecter le principe du moindre privilège, accordez des autorisations spécifiques aux utilisateurs Resource Access Management (RAM) en fonction de leurs rôles.
Types d'autorisations
Bastionhost prend en charge les types d'autorisations suivants. Chaque type limite les actions qu'un utilisateur RAM peut effectuer dans la console Bastionhost.
|
Autorisation |
Politique correspondante |
Actions possibles pour l'utilisateur RAM |
|
Droits d'administration |
AliyunYundunBastionHostFullAccess |
Gérer les instances Bastionhost, les utilisateurs et les ressources ; configurer les politiques de contrôle d'accès et les paramètres système ; consulter les informations d'audit |
|
Autorisations d'administrateur de projet |
AliyunYundunBastionHostProjectAdminAccess |
Gérer les groupes d'utilisateurs, les ressources, les autorisations de ressources, les politiques de contrôle et consulter les informations d'audit au sein des projets autorisés dans Bastionhost. |
|
Autorisations d'auditeur |
AliyunYundunBastionHostAuditOnlyAccess |
Consulter les informations d'audit, y compris les journaux et les vidéos, dans la console Bastionhost |
|
Autorisations en lecture seule |
AliyunYundunBastionHostReadOnlyAccess |
Lire la configuration, les données d'audit et les informations système depuis la console Bastionhost |
|
Autorisations d'ingénieur O&M |
AliyunYundunBastionHostOperateOnlyAccess |
Effectuer des opérations O&M à l'aide de la fonctionnalité O&M des ressources |
Étant donné que AliyunYundunBastionHostProjectAdminAccess est une politique de type Deny (refus), ne l'accordez pas conjointement avec AliyunYundunBastionHostFullAccess au même utilisateur RAM. Sinon, l'utilisateur RAM ne pourra pas accéder à des modules tels que System Settings dans Bastionhost.
Ces autorisations s'appliquent uniquement aux opérations effectuées dans la console Bastionhost. Elles ne restreignent pas les opérations O&M basées sur un client. L'accès O&M basé sur un client est contrôlé par la relation d'autorisation entre les utilisateurs et les ressources configurée dans Bastionhost.
Un compte Alibaba Cloud dispose d'autorisations de gestion par défaut et ne peut pas être importé dans Bastionhost en tant qu'utilisateur Bastionhost.
Un seul utilisateur RAM peut détenir plusieurs types d'autorisations simultanément.
Exigences supplémentaires pour les droits d'administration
Pour importer des ressources Alibaba Cloud ou des utilisateurs RAM dans Bastionhost à l'aide d'un utilisateur RAM disposant de droits d'administration, associez la politique en lecture seule correspondante à cet utilisateur RAM :
|
Cible d'importation |
Politique requise |
|
Instances Elastic Compute Service (ECS) |
AliyunECSReadOnlyAccess |
|
Utilisateurs RAM |
AliyunRAMReadOnlyAccess |
Autorisations d'appel d'API
Si un utilisateur RAM doit appeler les API Bastionhost à l'aide d'un ID de clé d'accès et d'une clé secrète d'accès (AK/SK) — par exemple, ListHostAccounts, GetWatermarkConfig ou d'autres opérations de gestion et de configuration — accordez l'une des politiques suivantes :
|
Scénario |
Politique requise |
|
Accès complet à l'API (opérations de gestion, de configuration et O&M via AK/SK) |
AliyunYundunBastionHostFullAccess |
|
Accès aux API liées à l'audit uniquement |
AliyunYundunBastionHostAuditOnlyAccess |
Vous pouvez également créer une politique personnalisée qui inclut uniquement les actions Bastionhost spécifiques requises pour votre cas d'utilisation.
Autorisations O&M inter-produits
Si un utilisateur RAM doit effectuer des opérations O&M sur des ressources provenant de plusieurs services cloud via Bastionhost, accordez les autorisations correspondantes pour chaque service cloud, en plus des autorisations Bastionhost. Par exemple, pour permettre à un utilisateur RAM d'effectuer des opérations O&M sur les ressources Bastionhost et Server Load Balancer (SLB), accordez AliyunSLBFullAccess en plus des autorisations Bastionhost.
Prérequis
Avant de commencer, assurez-vous d'avoir :
Créé un utilisateur RAM au sein du compte Alibaba Cloud propriétaire de l'instance Bastionhost.
(Facultatif). Associé un dispositif d'authentification multifacteur (MFA) virtuel à l'utilisateur RAM. Lorsqu'un dispositif MFA est associé, Bastionhost vérifie l'identité de l'utilisateur RAM à l'aide des paramètres MFA configurés lors de chaque connexion.
Accorder des autorisations à un utilisateur RAM
Connectez-vous à la console RAM en tant qu'administrateur RAM.
Dans le volet de navigation de gauche, choisissez Identities > Users.
Sur la page Users, localisez l'utilisateur RAM et cliquez sur Add Permissions dans la colonne Actions. Pour accorder des autorisations à plusieurs utilisateurs RAM simultanément, sélectionnez-les et cliquez sur Add Permissions en bas de la page.
-
Dans le panneau Add Permissions, configurez les paramètres suivants :
-
Resource Scope : Sélectionnez la portée de l'autorisation.
Account : L'autorisation s'applique au compte Alibaba Cloud actuel.
ResourceGroup : Les autorisations s'appliquent à un groupe de ressources spécifique.
ImportantSi vous sélectionnez ResourceGroup, assurez-vous que le service cloud prend en charge les groupes de ressources. Consultez la rubrique Services compatibles avec Resource Group. Pour obtenir des instructions sur l'octroi d'autorisations limitées à un groupe de ressources, consultez la rubrique Utiliser un groupe de ressources pour accorder à un utilisateur RAM les autorisations de gestion d'une instance ECS spécifique.
Principal : L'utilisateur RAM auquel accorder des autorisations. L'utilisateur RAM actuel est automatiquement sélectionné.
-
Policy : Sélectionnez une ou plusieurs politiques correspondant aux types d'autorisations que vous souhaitez accorder.
RemarqueLorsque vous créez une instance Bastionhost, en plus de l'autorisation AliyunYundunBastionHostFullAccess, vous avez également besoin de l'autorisation AliyunBSSOrderAccess pour payer la commande de l'instance. Sans ces autorisations, la création de l'instance échouera.
AliyunYundunBastionHostFullAccess: Fournit des autorisations complètes pour gérer Bastionhost.AliyunBSSOrderAccess: Accorde des autorisations pour afficher, payer et annuler des commandes dans le User Center.
La politique AliyunYundunBastionHostFullAccess accorde des autorisations uniquement pour gérer Bastionhost et afficher les détails de l'instance. Elle n'inclut pas les autorisations requises pour payer les commandes dans le User Center. Par conséquent, vous ne pouvez pas créer une instance Bastionhost avec cette seule politique.
-
Cliquez sur Grant permissions.
Cliquez sur Close.
FAQ
Q : Que faire si l'appel des API Bastionhost renvoie une erreur InvalidAccessKeyId ou unknown endpoint ?
Effectuez les vérifications suivantes dans l'ordre pour résoudre le problème :
Vérifiez les politiques d'autorisation : Assurez-vous que l'utilisateur RAM a reçu l'autorisation AliyunYundunBastionHostFullAccess ou une politique personnalisée incluant les actions Bastionhost requises. Des autorisations insuffisantes peuvent provoquer des échecs d'authentification de type
InvalidAccessKeyId.Spécifiez le bon endpoint : Lors de l'appel des API Bastionhost, vous devez spécifier explicitement l'endpoint régional. Par exemple, utilisez
yundun-bastionhost.aliyuncs.compour la région Chine (Shanghai). Bastionhost ne prend pas en charge la résolution d'endpoint par défaut ; ainsi, si aucun endpoint n'est spécifié, le SDK renvoie une erreurunknown endpoint.Vérifiez vos AK/SK : Confirmez que l'ID de clé d'accès et la clé secrète d'accès sont valides et correctement appariés. Si vous soupçonnez que la clé secrète d'accès a été exposée ou est incorrecte, créez une nouvelle clé d'accès pour effectuer un test.
Vérifiez les autorisations à l'aide d'OpenAPI Explorer : Utilisez OpenAPI Explorer avec les AK/SK de l'utilisateur RAM pour tester l'opération
ListHostAccounts(spécifiez le paramètreRegionId). Un appel réussi confirme que les autorisations et les AK/SK sont correctement configurés.
Q : Que faire si un utilisateur RAM signale une erreur d'autorisation ListTagResources manquante lors de la connexion à la console O&M Bastionhost ?
Cause : La politique d'autorisation en lecture seule prédéfinie pour Bastionhost n'inclut pas l'action yundun-bastionhost:ListTagResources . Lorsque la console O&M tente de charger les ressources taguées, la vérification d'autorisation échoue et renvoie une erreur d'autorisation manquante.
Solution : Créez une politique d'autorisation personnalisée dans la console RAM et accordez-la à l'utilisateur RAM concerné :
Connectez-vous à la console RAM.
Dans le volet de navigation de gauche, choisissez Permissions > Policies.
Cliquez sur Create Policy et passez en mode d'édition JSON.
Ajoutez l'action
yundun-bastionhost:ListTagResourcespour le service Bastionhost.Finalisez la création de la politique, puis accordez la politique personnalisée à l'utilisateur RAM cible.
Q : Que faire si un utilisateur RAM signale des autorisations insuffisantes lors de l'appel d'API de gestion telles que GetWatermarkConfig ?
Cause : Ce problème survient généralement lorsque les autorisations de l'utilisateur RAM sont limitées à un groupe de ressources qui n'inclut pas l'instance Bastionhost cible. Même si l'utilisateur RAM a reçu l'autorisation AliyunYundunBastionHostFullAccess ou une autre politique de gestion, les appels d'API tels que GetWatermarkConfig échoueront si la portée du groupe de ressources ne couvre pas l'instance Bastionhost accessible.
Solution : Effectuez l'une des actions suivantes :
Dans la console RAM, examinez la portée d'autorisation de l'utilisateur RAM. Si une autorisation au niveau du groupe de ressources est configurée, assurez-vous que le groupe de ressources inclut l'instance Bastionhost cible.
Modifiez la Resource Scope de l'octroi d'autorisation de ResourceGroup à Account pour accorder l'accès à toutes les instances sous le compte Alibaba Cloud actuel.