D'autres AWS SDK exemples sont disponibles dans le GitHub dépôt AWS Doc SDK Examples.
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.
À utiliser CreatePolicyVersion
avec un AWS SDK ou CLI
Les exemples de code suivants montrent comment utiliserCreatePolicyVersion
.
Les exemples d’actions sont des extraits de code de programmes de plus grande envergure et doivent être exécutés en contexte. Vous pouvez voir cette action en contexte dans l’exemple de code suivant :
- CLI
-
- AWS CLI
-
Pour créer une nouvelle version de la politique gérée
Cet exemple crée une nouvelle v2
version de la IAM politique dont elle ARN est la version par défaut arn:aws:iam::123456789012:policy/MyPolicy
et en fait la version par défaut.
aws iam create-policy-version \
--policy-arn arn:aws:iam::123456789012:policy/MyPolicy
\
--policy-document file://NewPolicyVersion.json
\
--set-as-default
Sortie :
{
"PolicyVersion": {
"CreateDate": "2015-06-16T18:56:03.721Z",
"VersionId": "v2",
"IsDefaultVersion": true
}
}
Pour plus d'informations, consultez la section IAMPolitiques de gestion des versions dans le guide de AWS IAM l'utilisateur.
- PowerShell
-
- Outils pour PowerShell
-
Exemple 1 : Cet exemple crée une nouvelle version « v2 » de la IAM politique dont il ARN s'agit arn:aws:iam::123456789012:policy/MyPolicy
et en fait la version par défaut. Le NewPolicyVersion.json
fichier fournit le contenu de la politique. Notez que vous devez utiliser le paramètre -Raw
switch pour traiter correctement le fichier JSON de régulation.
New-IAMPolicyVersion -PolicyArn arn:aws:iam::123456789012:policy/MyPolicy -PolicyDocument (Get-content -Raw NewPolicyVersion.json) -SetAsDefault $true
Sortie :
CreateDate Document IsDefaultVersion VersionId
---------- -------- ---------------- ---------
4/15/2015 10:54:54 AM True v2
- Python
-
- SDKpour Python (Boto3)
-
def create_policy_version(policy_arn, actions, resource_arn, set_as_default):
"""
Creates a policy version. Policies can have up to five versions. The default
version is the one that is used for all resources that reference the policy.
:param policy_arn: The ARN of the policy.
:param actions: The actions to allow in the policy version.
:param resource_arn: The ARN of the resource this policy version applies to.
:param set_as_default: When True, this policy version is set as the default
version for the policy. Otherwise, the default
is not changed.
:return: The newly created policy version.
"""
policy_doc = {
"Version": "2012-10-17",
"Statement": [{"Effect": "Allow", "Action": actions, "Resource": resource_arn}],
}
try:
policy = iam.Policy(policy_arn)
policy_version = policy.create_version(
PolicyDocument=json.dumps(policy_doc), SetAsDefault=set_as_default
)
logger.info(
"Created policy version %s for policy %s.",
policy_version.version_id,
policy_version.arn,
)
except ClientError:
logger.exception("Couldn't create a policy version for %s.", policy_arn)
raise
else:
return policy_version