D’autres exemples de kits AWS SDK sont disponibles dans le référentiel GitHub AWS Doc SDK Examples
Utilisation de PutRolePolicy avec un kit AWS SDK ou une interface de ligne de commande
Les exemples de code suivants illustrent comment utiliser PutRolePolicy.
- .NET
-
- SDK pour .NET
-
Note
Il y en a plus sur GitHub. Trouvez l’exemple complet et découvrez comment le configurer et l’exécuter dans le référentiel d’exemples de code AWS
. /// <summary> /// Update the inline policy document embedded in a role. /// </summary> /// <param name="policyName">The name of the policy to embed.</param> /// <param name="roleName">The name of the role to update.</param> /// <param name="policyDocument">The policy document that defines the role.</param> /// <returns>A Boolean value indicating the success of the action.</returns> public async Task<bool> PutRolePolicyAsync(string policyName, string roleName, string policyDocument) { var request = new PutRolePolicyRequest { PolicyName = policyName, RoleName = roleName, PolicyDocument = policyDocument }; var response = await _IAMService.PutRolePolicyAsync(request); return response.HttpStatusCode == HttpStatusCode.OK; }-
Pour plus de détails sur l’API, consultez PutRolePolicy dans la Référence des API du kit AWS SDK pour .NET.
-
- C++
-
- kit SDK pour C++
-
Note
Il y en a plus sur GitHub. Trouvez l’exemple complet et découvrez comment le configurer et l’exécuter dans le référentiel d’exemples de code AWS
. bool AwsDoc::IAM::putRolePolicy( const Aws::String &roleName, const Aws::String &policyName, const Aws::String &policyDocument, const Aws::Client::ClientConfiguration &clientConfig) { Aws::IAM::IAMClient iamClient(clientConfig); Aws::IAM::Model::PutRolePolicyRequest request; request.SetRoleName(roleName); request.SetPolicyName(policyName); request.SetPolicyDocument(policyDocument); Aws::IAM::Model::PutRolePolicyOutcome outcome = iamClient.PutRolePolicy(request); if (!outcome.IsSuccess()) { std::cerr << "Error putting policy on role. " << outcome.GetError().GetMessage() << std::endl; } else { std::cout << "Successfully put the role policy." << std::endl; } return outcome.IsSuccess(); }-
Pour plus de détails sur l’API, consultez PutRolePolicy dans la Référence des API du kit AWS SDK pour C++.
-
- CLI
-
- AWS CLI
-
Pour attacher une politique d’autorisation à un rôle IAM
La commande
put-role-policysuivante ajoute une politique d’autorisation au rôle nomméTest-Role.aws iam put-role-policy \ --role-nameTest-Role\ --policy-nameExamplePolicy\ --policy-documentfile://AdminPolicy.jsonCette commande ne produit aucun résultat.
La politique est définie sous la forme d’un document JSON dans le fichier AdminPolicy.json. (Le nom et l’extension du fichier n’ont aucune importance.)
Pour attacher une politique d’approbation à un rôle, utilisez la commande
update-assume-role-policy.Pour plus d’informations, consultez Modification d’un rôle dans le Guide de l’utilisateur AWS IAM.
-
Pour plus d’informations sur l’API, consultez PutRolePolicy
dans la Référence des commandes AWS CLI.
-
- JavaScript
-
- Kit SDK pour JavaScript (v3)
-
Note
Il y en a plus sur GitHub. Trouvez l’exemple complet et découvrez comment le configurer et l’exécuter dans le référentiel d’exemples de code AWS
. import { PutRolePolicyCommand, IAMClient } from "@aws-sdk/client-iam"; const examplePolicyDocument = JSON.stringify({ Version: "2012-10-17", Statement: [ { Sid: "VisualEditor0", Effect: "Allow", Action: [ "s3:ListBucketMultipartUploads", "s3:ListBucketVersions", "s3:ListBucket", "s3:ListMultipartUploadParts", ], Resource: "arn:aws:s3:::amzn-s3-demo-bucket", }, { Sid: "VisualEditor1", Effect: "Allow", Action: [ "s3:ListStorageLensConfigurations", "s3:ListAccessPointsForObjectLambda", "s3:ListAllMyBuckets", "s3:ListAccessPoints", "s3:ListJobs", "s3:ListMultiRegionAccessPoints", ], Resource: "*", }, ], }); const client = new IAMClient({}); /** * * @param {string} roleName * @param {string} policyName * @param {string} policyDocument */ export const putRolePolicy = async (roleName, policyName, policyDocument) => { const command = new PutRolePolicyCommand({ RoleName: roleName, PolicyName: policyName, PolicyDocument: policyDocument, }); const response = await client.send(command); console.log(response); return response; };-
Pour plus de détails sur l’API, consultez PutRolePolicy dans la Référence des API du kit AWS SDK pour JavaScript.
-
- PowerShell
-
- Outils pour PowerShell V4
-
Exemple 1 : cet exemple crée une politique en ligne nommée
FedTesterRolePolicyet l’intègre au rôle IAM.FedTesterRoleSi une politique en ligne portant le même nom existe déjà, elle est remplacée. Le contenu de la politique JSON provient du fichierFedTesterPolicy.json. Notez que vous devez utiliser le paramètre-Rawpour traiter correctement le contenu du fichier JSON.Write-IAMRolePolicy -RoleName FedTesterRole -PolicyName FedTesterRolePolicy -PolicyDocument (Get-Content -Raw FedTesterPolicy.json)-
Pour plus de détails sur l’API, consultez PutRolePolicy dans la Référence des applets de commande pour les Outils AWS pour PowerShell (V4).
-
- Outils pour PowerShell V5
-
Exemple 1 : cet exemple crée une politique en ligne nommée
FedTesterRolePolicyet l’intègre au rôle IAM.FedTesterRoleSi une politique en ligne portant le même nom existe déjà, elle est remplacée. Le contenu de la politique JSON provient du fichierFedTesterPolicy.json. Notez que vous devez utiliser le paramètre-Rawpour traiter correctement le contenu du fichier JSON.Write-IAMRolePolicy -RoleName FedTesterRole -PolicyName FedTesterRolePolicy -PolicyDocument (Get-Content -Raw FedTesterPolicy.json)-
Pour plus de détails sur l’API, consultez PutRolePolicy dans la Référence des applets de commande pour les Outils AWS pour PowerShell (V5).
-