Nous avons annoncé
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utilisation des stratégies IAM
Création d'une politique
Pour créer une nouvelle stratégie, fournissez le nom de la stratégie et un document de stratégie au format JSON dans un.CreatePolicyRequestvers le client AmazonIdentityManagementClientcreatePolicy
méthode.
Importations
import com.amazonaws.services.identitymanagement.AmazonIdentityManagement; import com.amazonaws.services.identitymanagement.AmazonIdentityManagementClientBuilder; import com.amazonaws.services.identitymanagement.model.CreatePolicyRequest; import com.amazonaws.services.identitymanagement.model.CreatePolicyResult;
Code
final AmazonIdentityManagement iam = AmazonIdentityManagementClientBuilder.defaultClient(); CreatePolicyRequest request = new CreatePolicyRequest() .withPolicyName(policy_name) .withPolicyDocument(POLICY_DOCUMENT); CreatePolicyResult response = iam.createPolicy(request);
Les documents de stratégie IAM sont des chaînes JSON avec un.syntaxe bien documentée. Voici un exemple qui fournit l'accès permettant d'adresser des demandes particulières à DynamoDB.
public static final String POLICY_DOCUMENT = "{" + " \"Version\": \"2012-10-17\"," + " \"Statement\": [" + " {" + " \"Effect\": \"Allow\"," + " \"Action\": \"logs:CreateLogGroup\"," + " \"Resource\": \"%s\"" + " }," + " {" + " \"Effect\": \"Allow\"," + " \"Action\": [" + " \"dynamodb:DeleteItem\"," + " \"dynamodb:GetItem\"," + " \"dynamodb:PutItem\"," + " \"dynamodb:Scan\"," + " \"dynamodb:UpdateItem\"" + " ]," + " \"Resource\": \"RESOURCE_ARN\"" + " }" + " ]" + "}";
Veuillez consulter l'exemple complet
Obtention d'une stratégie
Pour récupérer une stratégie existante, appelez legetPolicy
, fournissant le nom ARN de la stratégie dans un.GetPolicyRequestobjet.
Importations
import com.amazonaws.services.identitymanagement.AmazonIdentityManagement; import com.amazonaws.services.identitymanagement.AmazonIdentityManagementClientBuilder; import com.amazonaws.services.identitymanagement.model.GetPolicyRequest; import com.amazonaws.services.identitymanagement.model.GetPolicyResult;
Code
final AmazonIdentityManagement iam = AmazonIdentityManagementClientBuilder.defaultClient(); GetPolicyRequest request = new GetPolicyRequest() .withPolicyArn(policy_arn); GetPolicyResult response = iam.getPolicy(request);
Veuillez consulter l'exemple complet
Attachement d'une stratégie de rôle
Vous pouvez attacher une stratégie à un IAM (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html[role]) en appelant leattachRolePolicy
, en lui fournissant le nom du rôle et l'ARN de la stratégie dans un.AttachRolePolicyRequest.
Importations
import com.amazonaws.services.identitymanagement.AmazonIdentityManagement; import com.amazonaws.services.identitymanagement.AmazonIdentityManagementClientBuilder; import com.amazonaws.services.identitymanagement.model.AttachRolePolicyRequest; import com.amazonaws.services.identitymanagement.model.AttachedPolicy;
Code
final AmazonIdentityManagement iam = AmazonIdentityManagementClientBuilder.defaultClient(); AttachRolePolicyRequest attach_request = new AttachRolePolicyRequest() .withRoleName(role_name) .withPolicyArn(POLICY_ARN); iam.attachRolePolicy(attach_request);
Veuillez consulter l'exemple complet
Affichage d'une liste de stratégies de rôle attachées
Répertoriez les stratégies attachées sur un rôle en appelant le.listAttachedRolePolicies
méthode. Cette méthode accepte un objet ListAttachedRolePoliciesRequest contenant le nom du rôle pour lequel répertorier les stratégies.
Appelez getAttachedPolicies
sur l'objet ListAttachedRolePoliciesResult renvoyé pour obtenir la liste des stratégies attachées. Les résultats peuvent être tronqués. Si la méthode getIsTruncated
de l'objet ListAttachedRolePoliciesResult
renvoie true
, appelez la méthode setMarker
de l'objet ListAttachedRolePoliciesRequest
et utilisez-la pour appeler à nouveau listAttachedRolePolicies
afin d'obtenir le lot suivant de résultats.
Importations
import com.amazonaws.services.identitymanagement.AmazonIdentityManagement; import com.amazonaws.services.identitymanagement.AmazonIdentityManagementClientBuilder; import com.amazonaws.services.identitymanagement.model.ListAttachedRolePoliciesRequest; import com.amazonaws.services.identitymanagement.model.ListAttachedRolePoliciesResult; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors;
Code
final AmazonIdentityManagement iam = AmazonIdentityManagementClientBuilder.defaultClient(); ListAttachedRolePoliciesRequest request = new ListAttachedRolePoliciesRequest() .withRoleName(role_name); List<AttachedPolicy> matching_policies = new ArrayList<>(); boolean done = false; while(!done) { ListAttachedRolePoliciesResult response = iam.listAttachedRolePolicies(request); matching_policies.addAll( response.getAttachedPolicies() .stream() .filter(p -> p.getPolicyName().equals(role_name)) .collect(Collectors.toList())); if(!response.getIsTruncated()) { done = true; } request.setMarker(response.getMarker()); }
Veuillez consulter l'exemple complet
Détachement d'une stratégie de rôle
Pour détacher une stratégie d'un rôle, appelez le.detachRolePolicy
, en lui fournissant le nom du rôle et l'ARN de la stratégie dans un.DetachRolePolicyRequest.
Importations
import com.amazonaws.services.identitymanagement.AmazonIdentityManagement; import com.amazonaws.services.identitymanagement.AmazonIdentityManagementClientBuilder; import com.amazonaws.services.identitymanagement.model.DetachRolePolicyRequest; import com.amazonaws.services.identitymanagement.model.DetachRolePolicyResult;
Code
final AmazonIdentityManagement iam = AmazonIdentityManagementClientBuilder.defaultClient(); DetachRolePolicyRequest request = new DetachRolePolicyRequest() .withRoleName(role_name) .withPolicyArn(policy_arn); DetachRolePolicyResult response = iam.detachRolePolicy(request);
Veuillez consulter l'exemple complet
En savoir plus
-
Présentation des politiques IAMdans leIAMGuide de l'utilisateur .
-
AWSRéférence de stratégie IAMdans leIAMGuide de l'utilisateur .
-
CreatePolicydans la Référence d'API IAM
-
GetPolicydans la Référence d'API IAM
-
AttachRolePolicydans la Référence d'API IAM
-
ListAttachedRolePoliciesdans la Référence d'API IAM
-
DetachRolePolicydans la Référence d'API IAM