Politiques GIA pour le service d'hôte bastion

Cette rubrique présente des informations détaillées sur l'écriture de politiques pour contrôler l'accès au service d'hôte bastion.

Types de ressource individuels

bastion

bastion-session

Type de ressource agrégé

bastion-family

Une politique utilisant <verb> bastion-family équivaut à écrire une politique ayant un énoncé <verb> <individual resource-type> distinct pour chacun des types de ressource d'hôte bastion individuels.

Voir le tableau sous Informations détaillées sur les combinaisons Verbe + Type de ressource pour obtenir une description détaillée des opérations d'API couvertes par chaque verbe, pour chaque type de ressource individuel inclus dans bastion-family.

Variables prises en charge

Le service Hôte bastion prend en charge toutes les variables générales, plus les variables listées ici. Pour plus d'informations sur les variables générales prises en charge par les services Oracle Cloud Infrastructure, voir Détails des combinaisons Verbe + Type de ressource.

Variable Type de variable Commentaires
target.bastion.ocid Entité (OCID) Utilisez cette variable pour contrôler si les opérations sur un hôte bastion spécifique doivent être autorisées en réponse à une demande de lecture, de mise à jour, de suppression ou de déplacement d'un hôte bastion, d'affichage des informations relatives aux demandes de travail pour un hôte bastion ou de création d'une session sur un hôte bastion.
target.bastion.name Chaîne Utilisez cette variable pour contrôler si les opérations sur un hôte bastion spécifique doivent être autorisées en réponse à une demande de lecture, de mise à jour, de suppression ou de déplacement d'un hôte bastion, d'affichage des informations relatives aux demandes de travail pour un hôte bastion ou de création d'une session sur un hôte bastion.
target.bastion-session.username Chaîne Utilisez cette variable pour cibler un nom d'utilisateur de système d'exploitation spécifique lors de la création d'une session qui se connecte à une instance de calcul.
target.resource.ocid Entité (OCID) Utilisez cette variable pour cibler une instance de calcul spécifique par OCID (OCID) de son identificateur Oracle Cloud lors de la création d'une session.

Informations détaillées sur les combinaisons Verbe + Type de ressource

Le niveau d'accès est cumulatif au fur et à mesure que vous progressez depuis inspect à read, use et manage.

Un signe plus (+) dans une cellule de tableau indique un accès incrémentiel par rapport à la cellule précédente, alors que la mention no extra indique qu'il n'y a aucun accès incrémentiel.

Par exemple, le verbe read pour le type de ressource bastion inclut les mêmes autorisations et opérations d'API que le verbe inspect, mais ajoute également l'opération d'API GetBastion. De même, le verbe manage pour le type de ressource bastion autorise encore plus d'autorisations que l'autorisation use. Pour le type de ressource bastion, le verbe manage inclut les mêmes autorisations et opérations d'API que le verbe use, plus les autorisations BASTION_CREATE, BASTION_UPDATE, BASTION_DELETE et BASTION_MOVE ainsi qu'un certain nombre d'opérations d'API (CreateBastion, UpdateBastion, DeleteBastion et ChangeBastionCompartment).

bastion
Verbes Autorisations API entièrement couvertes API partiellement couvertes
inspect

BASTION_INSPECT

ListBastions

aucune

read

INSPECT +

BASTION_READ

INSPECT +

GetBastion

ListSessions (requiert également inspect session)

use

READ +

BASTION_USE

no extra

 

CreateSession (requiert également manage session, read instances, read subnets et read vcns)

UpdateSession (requiert également manage session)

DeleteSession (requiert également manage session)

manage

USE +

BASTION_CREATE

BASTION_UPDATE

BASTION_DELETE

BASTION_MOVE

USE +

UpdateBastion

ChangeBastionCompartment

CreateBastion (requiert également manage vcns, manage subnets, manage route-tables, manage security-lists, manage dhcp-options, use network-security-groups et use vnics)

DeleteBastion (requiert également manage vcns, use private-ips, use vnics, use subnets et use network-security-groups)

session
Verbes Autorisations API entièrement couvertes API partiellement couvertes
inspect

BASTION_SESSION_INSPECT

aucune

ListSessions (requiert également read bastion)

read

INSPECT +

BASTION_SESSION_READ

INSPECT +

GetSession

aucune

use

READ +

BASTION_SESSION_UPDATE

READ +

no extra

UpdateSession (requiert également use bastion)

manage

USE +

BASTION_SESSION_CREATE

BASTION_SESSION_DELETE

USE +

no extra

CreateSession (requiert également use bastion, read instances, read subnets et read vcns)

Autorisations requises pour chaque opération d'API

Le tableau suivant liste les opérations d'API dans un ordre logique, regroupées par type de ressource.

Pour plus d'informations sur les autorisations, voir Autorisations.

Opération d'API Autorisations requises pour utiliser l'opération
ListBastions BASTION_INSPECT
GetBastion BASTION_READ
CreateBastion BASTION_CREATE et VCN_CREATE
UpdateBastion BASTION_UPDATE
DeleteBastion BASTION_DELETE et VCN_DELETE
ChangeBastionCompartment BASTION_MOVE
CreateSession

BASTION_USE, INSTANCE_READ, INSTANCE_INSPECT, VCN_READ, VNIC_ATTACHMENT_READ, VNIC_READ, BASTION_SESSION_CREATE, SUBNET_READ et INSTANCE_AGENT_PLUGIN_READ

Note : INSTANCE_AGENT_PLUGIN_READ est requis uniquement pour les sessions SSH gérées.

GetSession BASTION_SESSION_READ
ListSessions BASTION_READ et BASTION_SESSION_INSPECT
UpdateSession BASTION_USE et BASTION_SESSION_UPDATE
DeleteSession BASTION_USE et BASTION_SESSION_DELETE

Exemples de politique

Découvrez les politiques IAM du service d'hôte bastion à partir d'exemples.

Pour créer un hôte bastion ou une session, les utilisateurs ont besoin des autorisations suivantes pour d'autres ressources Oracle Cloud Infrastructure :

  • Gérer les réseaux
  • Lire les instances de calcul
  • Lire les plugiciels d'agent d'instance de calcul (Oracle Cloud Agent)
  • Inspecter les demandes de travail

Pour en savoir plus, voir Informations détaillées sur les politiques pour les services de base.

Exemples de politique pour le service d'hôte bastion :

  • Autoriser les utilisateurs du groupe SecurityAdmins à créer, mettre à jour et supprimer toutes les ressources du service Hôte bastion dans l'ensemble de la location :

    Allow group SecurityAdmins to manage bastion-family in tenancy
    Allow group SecurityAdmins to manage virtual-network-family in tenancy
    Allow group SecurityAdmins to read instance-family in tenancy
    Allow group SecurityAdmins to read instance-agent-plugins in tenancy
    Allow group SecurityAdmins to inspect work-requests in tenancy
  • Autoriser les utilisateurs du groupe BastionUsers à créer des sessions, à s'y connecter et à y mettre fin dans toute la location :

    Allow group BastionUsers to use bastions in tenancy
    Allow group BastionUsers to read instances in tenancy
    Allow group BastionUsers to read vcn in tenancy
    Allow group BastionUsers to manage bastion-session in tenancy
    Allow group BastionUsers to read subnets in tenancy
    Allow group BastionUsers to read instance-agent-plugins in tenancy
    Allow group BastionUsers to read vnic-attachments in tenancy
    Allow group BastionUsers to read vnics in tenancy
  • Autoriser les utilisateurs du groupe BastionUsers à créer des sessions, à s'y connecter et à y mettre fin dans le compartiment SalesApps :

    Allow group BastionUsers to use bastion in compartment SalesApps
    Allow group BastionUsers to read instances in compartment SalesApps
    Allow group BastionUsers to read vcn in compartment SalesApps
    Allow group BastionUsers to manage bastion-session in compartment SalesApps
    Allow group BastionUsers to read subnets in compartment SalesApps
    Allow group BastionUsers to read instance-agent-plugins in compartment SalesApps
    Allow group BastionUsers to read vnic-attachments in compartment SalesApps
    Allow group BastionUsers to read vnics in compartment SalesApps

    L'exemple suppose que les réseaux et les instances de calcul se trouvent dans le même compartiment que l'hôte bastion.

  • Autoriser les utilisateurs du groupe SalesAdmins à créer des sessions, à s'y connecter et à y mettre fin pour un hôte cible spécifique dans le compartiment SalesApps :

    Allow group SalesAdmins to use bastion in compartment SalesApps
    Allow group BastionUsers to read instances in compartment SalesApps
    Allow group BastionUsers to read vcn in compartment SalesApps
    Allow group SalesAdmins to manage bastion-session in compartment SalesApps where ALL {target.resource.ocid='<instance_OCID>', target.bastion-session.username='<session_username>'}
    Allow group SalesAdmins to read subnets in compartment SalesApps
    Allow group SalesAdmins to read instance-agent-plugins in compartment SalesApps
    Allow group BastionUsers to read vnic-attachments in compartment SalesApps
    Allow group BastionUsers to read vnics in compartment SalesApps

    <session_username> est le nom d'utilisateur de système d'exploitation indiqué lors de la création d'une session sur l'instance de calcul.

    L'exemple suppose que les réseaux et les instances de calcul se trouvent dans le même compartiment que l'hôte bastion.

  • Autoriser les utilisateurs du groupe SecurityAuditors à voir toutes les ressources du service Hôte bastion dans le compartiment SalesApps :

    Allow group SecurityAuditors to read bastion-family in compartment SalesApps