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.
Syntaxe et exemples d'une politique de sauvegarde
Cette page décrit la syntaxe d'une politique de sauvegarde et fournit des exemples.
Syntaxe des politiques de sauvegarde
Une politique de sauvegarde est un fichier texte brut qui est structuré conformément aux règles de JSON
Pour plus d'informations sur AWS Backup les forfaits, consultez CreateBackupPlanle guide du AWS Backup développeur.
Considérations
Syntaxe des politiques
Les noms de clé dupliqués seront rejetés en JSON.
Les politiques doivent spécifier les ressources Régions AWS et les ressources à sauvegarder.
Les politiques doivent spécifier le rôle IAM assumé AWS Backup .
@@assign
L'utilisation d'un opérateur au même niveau peut remplacer les paramètres existants. Pour plus d'informations, consultez Une politique enfant remplace les paramètres d'une politique parente.
Les opérateurs d'héritage contrôlent la façon dont les politiques héritées et les politiques attachées à un compte fusionnent pour former la politique effective de ce compte. Ces opérateurs comprennent les opérateurs de définition de valeurs et les opérateurs de contrôle enfants.
Pour plus d'informations, consultez les sections Opérateurs d'héritage et Exemples de politiques de sauvegarde.
Rôles IAM
Le rôle IAM doit exister lors de la première création d'un plan de sauvegarde.
Le rôle IAM doit être autorisé à accéder aux ressources identifiées par une requête de balise.
Le rôle IAM doit être autorisé à effectuer la sauvegarde.
Coffres-forts de sauvegarde
Des coffres-forts doivent exister dans chaque unité spécifiée pour Régions AWS qu'un plan de sauvegarde puisse être exécuté.
Des coffres-forts doivent exister pour chaque AWS compte bénéficiant de la politique effective. Pour plus d'informations, consultez la section Création et suppression d'un coffre de sauvegarde dans le Guide du AWS Backup développeur.
Nous vous recommandons d'utiliser des ensembles de AWS CloudFormation piles et l'intégration de ce service avec Organizations pour créer et configurer automatiquement des coffres-forts de sauvegarde et des rôles IAM pour chaque compte membre de l'organisation. Pour de plus amples informations, consultez Créer un ensemble de piles avec des autorisations autogérées dans le Guide de l'utilisateur AWS CloudFormation .
Quotas
Pour une liste des quotas, voir « AWS Backup quotas » dans le Guide du AWS Backup développeur.
Syntaxe de sauvegarde : Présentation
La syntaxe d'une politique de sauvegarde inclut les composants suivants :
{ "plans": { "PlanName": { "rules": { ... }, "regions": { ... }, "selections": { ... }, "advanced_backup_settings": { ... }, "backup_plan_tags": { ... } } } }
Element | Description | Obligatoire |
---|---|---|
règles | Liste des règles de sauvegarde. Chaque règle définit le moment où les sauvegardes démarrent et la fenêtre d'exécution des ressources spécifiées dans les selections éléments regions et. |
Oui |
régions | Liste des domaines Régions AWS dans lesquels une politique de sauvegarde peut protéger les ressources. | Oui |
sélections | Un ou plusieurs types de ressources dans les limites spécifiées regions que la sauvegarde rules protège. |
Oui |
paramètres_de_sauvegarde avancés | Options de configuration pour des scénarios de sauvegarde spécifiques. À l'heure actuelle, le seul paramètre de sauvegarde avancé pris en charge active les sauvegardes Microsoft VSS (Volume) pour Windows ou SQL Server exécutées sur une EC2 instance Amazon. |
Non |
backup_plan_tags | Tags que vous souhaitez associer à un plan de sauvegarde. Chaque balise est une étiquette composée d’une clé définie par l’utilisateur et d’une valeur. Les balises peuvent vous aider à gérer, identifier, organiser, rechercher et filtrer vos plans de sauvegarde. |
Non |
Syntaxe de sauvegarde : règles
La clé rules
de stratégie spécifie les tâches de sauvegarde planifiées qui AWS Backup
s'exécutent sur les ressources sélectionnées.
Element | Description | Obligatoire |
---|---|---|
schedule_expression |
Expression cron en UTC qui spécifie quand AWS Backup lance une tâche de sauvegarde. Pour plus d'informations sur les expressions cron, consultez la section Utilisation des expressions cron et rate pour planifier des règles dans le guide de EventBridge l'utilisateur Amazon. |
Oui |
target_backup_vault_name |
Coffres-forts de sauvegarde où les sauvegardes sont stockées. Les coffres-forts de sauvegarde sont identifiés par des noms spécifiques pour le compte utilisé pour les créer et l'dans Région AWS laquelle ils sont créés. |
Oui |
start_backup_window_minutes |
Le nombre de minutes à attendre avant d'annuler une tâche de sauvegarde sera annulée si elle ne démarre pas correctement. Si cette valeur est incluse, elle doit être d'au moins 60 minutes pour éviter les erreurs. |
Non |
complete_backup_window_minutes |
Nombre de minutes après le démarrage réussi d'une tâche de sauvegarde et avant qu'elle doive être terminée ou qu'elle soit annulée par AWS Backup. | Non |
enable_continuous_backup |
Spécifie si AWS Backup crée des sauvegardes continues.
Pour plus d'informations sur les sauvegardes continues, consultez P oint-in-time recovery dans le Guide du AWS Backup développeur. Remarque : les sauvegardes compatibles PITR ont une durée de conservation maximale de 35 jours. |
Non |
lifecycle |
Spécifie à AWS Backup quel moment passe une sauvegarde au stockage à froid et à quel moment elle expire. Les types de ressources pouvant passer au stockage à froid sont répertoriés dans le tableau Disponibilité des fonctionnalités par ressource Disponibilité des fonctionnalités par ressource du Guide du AWS Backup développeur. Chaque cycle de vie contient les éléments suivants :
Remarque : Les sauvegardes transférées vers un stockage à froid doivent être stockées dans le stockage à froid pendant au moins 90 jours. Cela signifie que le délai |
Non |
copy_actions |
Spécifie si une sauvegarde est AWS Backup copiée vers un ou plusieurs emplacements supplémentaires. Chaque action de copie contient les éléments suivants :
Remarque : Les sauvegardes transférées vers un stockage à froid doivent être stockées dans le stockage à froid pendant au moins 90 jours. Cela signifie que le délai |
Non |
recovery_point_tags |
Balises que vous souhaitez attribuer aux ressources restaurées à partir d'une sauvegarde. Chaque balise contient les éléments suivants :
|
Non |
index_actions |
Spécifie s'il AWS Backup crée un index de sauvegarde de vos instantanés Amazon EBS et/ou de vos sauvegardes Amazon S3. Des index de sauvegarde sont créés afin de rechercher les métadonnées de vos sauvegardes. Pour plus d'informations sur la création d'index de sauvegarde et la recherche de sauvegarde, consultez la section Recherche de sauvegarde. Remarque : des autorisations de rôle IAM supplémentaires sont requises pour créer un index de sauvegarde instantanée Amazon EBS. Chaque action d'indexation contient l'élément suivant : les types |
Non |
Syntaxe de sauvegarde : régions
La clé de regions
stratégie spécifie les dans Régions AWS lesquelles AWS Backup recherche les ressources qui correspondent aux conditions de la selections
clé.
Element | Description | Obligatoire |
---|---|---|
regions |
Spécifie les Région AWS codes. Par exemple : |
Oui |
Syntaxe de sauvegarde : sélections
La clé selections
de stratégie spécifie les ressources qui sont sauvegardées par les règles d'une politique de sauvegarde.
Il existe deux éléments qui s'excluent mutuellement : tags
etresources
. Pour être valide, une politique efficace doit être resources
inscrite dans des balises have
ou dans la sélection.
Si vous souhaitez une sélection comportant à la fois des conditions de balise et des conditions de ressources, utilisez les resources
clés.
Element | Description | Obligatoire |
---|---|---|
iam_role_arn |
Rôle IAM qui AWS Backup suppose d'interroger, de découvrir et de sauvegarder des ressources dans les régions spécifiées. Le rôle doit disposer d'autorisations suffisantes pour interroger les ressources en fonction des conditions des balises et effectuer des opérations de sauvegarde sur les ressources correspondantes. |
Oui |
tag_key |
Nom de la clé de balise à rechercher. | Oui |
tag_value |
Valeur qui doit être associée au tag_key correspondant. AWS Backup inclut la ressource uniquement si tag_key et tag_value correspondent (distinction majuscules/minuscules). |
Oui |
conditions |
Étiquetez les clés et les valeurs que vous souhaitez inclure ou exclure Utilisez string_equals ou string_not_equals pour inclure ou exclure les balises correspondant exactement à une correspondance. Utilisez string_like et string_not_like pour inclure ou exclure les balises contenant ou ne contenant pas de caractères spécifiques Remarque : Limité à 30 conditions pour chaque sélection. |
Non |
Element | Description | Obligatoire |
---|---|---|
iam_role_arn |
Rôle IAM qui AWS Backup suppose d'interroger, de découvrir et de sauvegarder des ressources dans les régions spécifiées. Le rôle doit disposer d'autorisations suffisantes pour interroger les ressources en fonction des conditions des balises et effectuer des opérations de sauvegarde sur les ressources correspondantes. Remarque : Dans AWS GovCloud (US) Regions, vous devez ajouter le nom de la partition à l'ARN. Par exemple, « |
Oui |
resource_types |
Types de ressources à inclure dans un plan de sauvegarde. | Oui |
not_resource_types |
Types de ressources à exclure d'un plan de sauvegarde. | Non |
conditions |
Étiquetez les clés et les valeurs que vous souhaitez inclure ou exclure Utilisez string_equals ou string_not_equals pour inclure ou exclure les balises correspondant exactement à une correspondance. Utilisez string_like et string_not_like pour inclure ou exclure les balises contenant ou ne contenant pas de caractères spécifiques Remarque : Limité à 30 conditions pour chaque sélection. |
Non |
Types de ressources pris en charge
Organizations prend en charge les types de ressources suivants pour les not_resource_types
éléments resource_types
et :
-
AWS Backup gateway machines virtuelles :
"arn:aws:backup-gateway:*:*:vm/*"
-
AWS CloudFormation piles :
"arn:aws:cloudformation:*:*:stack/*"
-
Tables Amazon DynamoDB :
"arn:aws:dynamodb:*:*:table/*"
-
EC2 Instances Amazon :
"arn:aws:ec2:*:*:instance/*"
-
Volumes Amazon EBS :
"arn:aws:ec2:*:*:volume/*"
-
Système de fichiers Amazon EFS :
"arn:aws:elasticfilesystem:*:*:file-system/*"
-
Clusters Amazon Aurora/Amazon DocumentDB/Amazon Neptune :
"arn:aws:rds:*:*:cluster:*"
-
Bases de données Amazon RDS :
"arn:aws:rds:*:*:db:*"
-
Cluster Amazon Redshift :
"arn:aws:redshift:*:*:cluster:*"
-
Amazon S3 :
"arn:aws:s3:::*"
-
Gestionnaire de systèmes AWS pour SAP Bases de données HANA :
"arn:aws:ssm-sap:*:*:HANA/*"
-
AWS Storage Gateway passerelles :
"arn:aws:storagegateway:*:*:gateway/*"
-
Bases de données Amazon Timestream :
"arn:aws:timestream:*:*:database/*"
-
Systèmes de FSx fichiers Amazon :
"arn:aws:fsx:*:*:file-system/*"
-
FSx Volumes Amazon :
"arn:aws:fsx:*:*:volume/*"
Exemples de code
Pour plus d'informations, consultez les sections Spécification des ressources à l'aide du bloc de balises et Spécification des ressources à l'aide du bloc de ressources.
Syntaxe de sauvegarde : paramètres de sauvegarde avancés
La advanced_backup_settings
clé spécifie les options de configuration pour des scénarios de sauvegarde spécifiques. Chaque paramètre contient les éléments suivants :
Element | Description | Obligatoire |
---|---|---|
advanced_backup_settings |
Spécifie les paramètres pour des scénarios de sauvegarde spécifiques. Cette clé contient un ou plusieurs paramètres. Chaque paramètre est une chaîne d'objet JSON avec les éléments suivants : À l'heure actuelle, le seul paramètre de sauvegarde avancé pris en charge active les sauvegardes Microsoft VSS (Volume) pour Windows ou SQL Server exécutées sur une EC2 instance Amazon. Chaque sauvegarde avancée définit les éléments suivants :
|
Non |
Exemple :
"advanced_backup_settings": { "ec2": { "windows_vss": { "@@assign": "enabled" } } },
Syntaxe de sauvegarde : balises du plan de sauvegarde
La clé backup_plan_tags
de politique spécifie les balises qui sont attachées à un plan de sauvegarde lui-même. Cela n'a aucun impact sur les balises spécifiées pour rules
ouselections
.
Element | Description | Obligatoire |
---|---|---|
backup_plan_tags |
Chaque balise est une étiquette composée d'une clé définie par l'utilisateur et d'une valeur :
|
Non |
Exemples de politiques de sauvegarde
Les exemples de politiques de sauvegarde qui suivent sont fournis à titre informatif uniquement. Dans certains des exemples suivants, la mise en forme des espaces JSON peut être compressée pour économiser de l'espace.
-
Exemple 2 : Une politique parente est fusionnée avec une politique enfant
-
Exemple 3 : Une politique parente empêche toute modification par une politique enfant
-
Exemple 5 : Une politique enfant remplace les paramètres d'une politique parente
-
Exemple 6 : Spécification des ressources avec le bloc de balises
-
Exemple 7 : Spécification des ressources avec le bloc de ressources
Exemple 1 : Politique affectée à un nœud parent
L'exemple suivant montre une politique de sauvegarde affectée à l'un des nœuds parents d'un compte.
Politique parente : cette politique peut être attachée à la racine de l'organisation ou à une UO parente de tous les comptes prévus.
{ "plans": { "PII_Backup_Plan": { "regions": { "@@assign": [ "ap-northeast-2", "us-east-1", "eu-north-1" ] }, "rules": { "Hourly": { "schedule_expression": { "@@assign": "cron(0 5/1 ? * * *)" }, "start_backup_window_minutes": { "@@assign": "480" }, "complete_backup_window_minutes": { "@@assign": "10080" }, "lifecycle": { "move_to_cold_storage_after_days": { "@@assign": "180" }, "delete_after_days": { "@@assign": "270" }, "opt_in_to_archive_for_supported_resources": { "@@assign": "false" } }, "target_backup_vault_name": { "@@assign": "FortKnox" }, "index_actions": { "resource_types": { "@@assign": [ "EBS", "S3" ] } }, "copy_actions": { "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault": { "target_backup_vault_arn": { "@@assign": "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault" }, "lifecycle": { "move_to_cold_storage_after_days": { "@@assign": "30" }, "delete_after_days": { "@@assign": "120" }, "opt_in_to_archive_for_supported_resources": { "@@assign": "false" } } }, "arn:aws:backup:us-west-1:111111111111:backup-vault:tertiary_vault": { "target_backup_vault_arn": { "@@assign": "arn:aws:backup:us-west-1:111111111111:backup-vault:tertiary_vault" }, "lifecycle": { "move_to_cold_storage_after_days": { "@@assign": "30" }, "delete_after_days": { "@@assign": "120" }, "opt_in_to_archive_for_supported_resources": { "@@assign": "false" } } } } } }, "selections": { "tags": { "datatype": { "iam_role_arn": { "@@assign": "arn:aws:iam::$account:role/MyIamRole" }, "tag_key": { "@@assign": "dataType" }, "tag_value": { "@@assign": [ "PII", "RED" ] } } } }, "advanced_backup_settings": { "ec2": { "windows_vss": { "@@assign": "enabled" } } } } } }
Si aucune autre politique n'est héritée ou attachée aux comptes, la politique effective rendue dans chaque applicable Compte AWS ressemble à l'exemple suivant. L'expression CRON provoque l'exécution de la sauvegarde une fois par heure à l'heure pile. L'ID de compte 123456789012 sera l'ID de compte réel de chaque compte.
{ "plans": { "PII_Backup_Plan": { "regions": [ "us-east-1", "ap-northeast-3", "eu-north-1" ], "rules": { "hourly": { "schedule_expression": "cron(0 0/1 ? * * *)", "start_backup_window_minutes": "60", "target_backup_vault_name": "FortKnox", "index_actions": { "resource_types": { "@@assign": [ "EBS", "S3" ] } }, "lifecycle": { "delete_after_days": "2", "move_to_cold_storage_after_days": "180", "opt_in_to_archive_for_supported_resources": "false" }, "copy_actions": { "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault": { "target_backup_vault_arn": { "@@assign": "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault" }, "lifecycle": { "delete_after_days": "28", "move_to_cold_storage_after_days": "180", "opt_in_to_archive_for_supported_resources": "false" } }, "arn:aws:backup:us-west-1:111111111111:backup-vault:tertiary_vault": { "target_backup_vault_arn": { "@@assign": "arn:aws:backup:us-west-1:111111111111:backup-vault:tertiary_vault" }, "lifecycle": { "delete_after_days": "28", "move_to_cold_storage_after_days": "180", "opt_in_to_archive_for_supported_resources": "false" } } } } }, "selections": { "tags": { "datatype": { "iam_role_arn": "arn:aws:iam::123456789012:role/MyIamRole", "tag_key": "dataType", "tag_value": [ "PII", "RED" ] } } }, "advanced_backup_settings": { "ec2": { "windows_vss": "enabled" } } } } }
Exemple 2 : Une politique parente est fusionnée avec une politique enfant
Dans l'exemple suivant, une politique parente héritée et une politique enfant héritée ou directement attachée à un Compte AWS fusionnent pour former la politique effective.
Politique parente : cette politique peut être attachée à la racine de l'organisation ou à une UO parente.
{ "plans": { "PII_Backup_Plan": { "regions": { "@@append":[ "us-east-1", "ap-northeast-3", "eu-north-1" ] }, "rules": { "Hourly": { "schedule_expression": { "@@assign": "cron(0 0/1 ? * * *)" }, "start_backup_window_minutes": { "@@assign": "60" }, "target_backup_vault_name": { "@@assign": "FortKnox" }, "index_actions": { "resource_types": { "@@assign": [ "EBS", "S3" ] } }, "lifecycle": { "move_to_cold_storage_after_days": { "@@assign": "28" }, "delete_after_days": { "@@assign": "180" }, "opt_in_to_archive_for_supported_resources": { "@@assign": "false" } }, "copy_actions": { "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault" : { "target_backup_vault_arn" : { "@@assign" : "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault" }, "lifecycle": { "move_to_cold_storage_after_days": { "@@assign": "28" }, "delete_after_days": { "@@assign": "180" }, "opt_in_to_archive_for_supported_resources": { "@@assign": "false" } } } } } }, "selections": { "tags": { "datatype": { "iam_role_arn": { "@@assign": "arn:aws:iam::$account:role/MyIamRole" }, "tag_key": { "@@assign": "dataType" }, "tag_value": { "@@assign": [ "PII", "RED" ] } } } } } } }
Politique enfant : cette politique peut être attachée directement au compte ou à une UO dans n'importe quel niveau inférieur à celui auquel la politique parente est attachée.
{ "plans": { "Monthly_Backup_Plan": { "regions": { "@@append":[ "us-east-1", "eu-central-1" ] }, "rules": { "Monthly": { "schedule_expression": { "@@assign": "cron(0 5 1 * ? *)" }, "start_backup_window_minutes": { "@@assign": "480" }, "target_backup_vault_name": { "@@assign": "Default" }, "lifecycle": { "move_to_cold_storage_after_days": { "@@assign": "30" }, "delete_after_days": { "@@assign": "365" }, "opt_in_to_archive_for_supported_resources": { "@@assign": "false" } }, "copy_actions": { "arn:aws:backup:us-east-1:$account:backup-vault:Default" : { "target_backup_vault_arn" : { "@@assign" : "arn:aws:backup:us-east-1:$account:backup-vault:Default" }, "lifecycle": { "move_to_cold_storage_after_days": { "@@assign": "30" }, "delete_after_days": { "@@assign": "365" }, "opt_in_to_archive_for_supported_resources": { "@@assign": "false" } } } } } }, "selections": { "tags": { "MonthlyDatatype": { "iam_role_arn": { "@@assign": "arn:aws:iam::$account:role/MyMonthlyBackupIamRole" }, "tag_key": { "@@assign": "BackupType" }, "tag_value": { "@@assign": [ "MONTHLY", "RED" ] } } } } } } }
Politique effective résultante : la politique effective appliquée aux comptes contient deux plans, chacun avec son propre ensemble de règles et son ensemble de ressources auquel appliquer les règles.
{ "plans": { "PII_Backup_Plan": { "regions": [ "us-east-1", "ap-northeast-3", "eu-north-1" ], "rules": { "hourly": { "schedule_expression": "cron(0 0/1 ? * * *)", "start_backup_window_minutes": "60", "target_backup_vault_name": "FortKnox", "index_actions": { "resource_types": { "@@assign": [ "EBS", "S3" ] } }, "lifecycle": { "delete_after_days": "2", "move_to_cold_storage_after_days": "180", "opt_in_to_archive_for_supported_resources": { "@@assign": "false" } }, "copy_actions": { "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault" : { "target_backup_vault_arn" : { "@@assign" : "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault" }, "lifecycle": { "move_to_cold_storage_after_days": "28", "delete_after_days": "180", "opt_in_to_archive_for_supported_resources": { "@@assign": "false" } } } } } }, "selections": { "tags": { "datatype": { "iam_role_arn": "arn:aws:iam::$account:role/MyIamRole", "tag_key": "dataType", "tag_value": [ "PII", "RED" ] } } } }, "Monthly_Backup_Plan": { "regions": [ "us-east-1", "eu-central-1" ], "rules": { "monthly": { "schedule_expression": "cron(0 5 1 * ? *)", "start_backup_window_minutes": "480", "target_backup_vault_name": "Default", "lifecycle": { "delete_after_days": "365", "move_to_cold_storage_after_days": "30", "opt_in_to_archive_for_supported_resources": { "@@assign": "false" } }, "copy_actions": { "arn:aws:backup:us-east-1:$account:backup-vault:Default" : { "target_backup_vault_arn": { "@@assign" : "arn:aws:backup:us-east-1:$account:backup-vault:Default" }, "lifecycle": { "move_to_cold_storage_after_days": "30", "delete_after_days": "365", "opt_in_to_archive_for_supported_resources": { "@@assign": "false" } } } } } }, "selections": { "tags": { "monthlydatatype": { "iam_role_arn": "arn:aws:iam::&ExampleAWSAccountNo3;:role/MyMonthlyBackupIamRole", "tag_key": "BackupType", "tag_value": [ "MONTHLY", "RED" ] } } } } } }
Exemple 3 : Une politique parente empêche toute modification par une politique enfant
Dans l'exemple suivant, une politique parente héritée utilise les opérateurs de contrôle enfants pour appliquer tous les paramètres et empêche leur modification ou remplacement par une politique enfant.
Politique parente : cette politique peut être attachée à la racine de l'organisation ou à une UO parente. La présence de "@@operators_allowed_for_child_policies": ["@@none"]
à chaque nœud de la politique signifie qu'une politique enfant ne peut apporter aucune modification au plan. Une politique enfant ne peut pas non plus ajouter des plans supplémentaires à la politique effective. Cette politique devient la politique effective pour chaque UO et chaque compte sous l'UO à laquelle elle est rattachée.
{ "plans": { "@@operators_allowed_for_child_policies": ["@@none"], "PII_Backup_Plan": { "@@operators_allowed_for_child_policies": ["@@none"], "regions": { "@@operators_allowed_for_child_policies": ["@@none"], "@@append": [ "us-east-1", "ap-northeast-3", "eu-north-1" ] }, "rules": { "@@operators_allowed_for_child_policies": ["@@none"], "Hourly": { "@@operators_allowed_for_child_policies": ["@@none"], "schedule_expression": { "@@operators_allowed_for_child_policies": ["@@none"], "@@assign": "cron(0 0/1 ? * * *)" }, "start_backup_window_minutes": { "@@operators_allowed_for_child_policies": ["@@none"], "@@assign": "60" }, "target_backup_vault_name": { "@@operators_allowed_for_child_policies": ["@@none"], "@@assign": "FortKnox" }, "index_actions": { "@@operators_allowed_for_child_policies": ["@@none"], "resource_types": { "@@assign": [ "EBS", "S3" ] } }, "lifecycle": { "@@operators_allowed_for_child_policies": ["@@none"], "move_to_cold_storage_after_days": { "@@operators_allowed_for_child_policies": ["@@none"], "@@assign": "28" }, "delete_after_days": { "@@operators_allowed_for_child_policies": ["@@none"], "@@assign": "180" }, "opt_in_to_archive_for_supported_resources": { "@@operators_allowed_for_child_policies": ["@@none"], "@@assign": "false" } }, "copy_actions": { "@@operators_allowed_for_child_policies": ["@@none"], "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault": { "@@operators_allowed_for_child_policies": ["@@none"], "target_backup_vault_arn": { "@@assign": "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault", "@@operators_allowed_for_child_policies": ["@@none"] }, "lifecycle": { "@@operators_allowed_for_child_policies": ["@@none"], "delete_after_days": { "@@operators_allowed_for_child_policies": ["@@none"], "@@assign": "28" }, "move_to_cold_storage_after_days": { "@@operators_allowed_for_child_policies": ["@@none"], "@@assign": "180" }, "opt_in_to_archive_for_supported_resources": { "@@operators_allowed_for_child_policies": ["@@none"], "@@assign": "false" } } } } } }, "selections": { "@@operators_allowed_for_child_policies": ["@@none"], "tags": { "@@operators_allowed_for_child_policies": ["@@none"], "datatype": { "@@operators_allowed_for_child_policies": ["@@none"], "iam_role_arn": { "@@operators_allowed_for_child_policies": ["@@none"], "@@assign": "arn:aws:iam::$account:role/MyIamRole" }, "tag_key": { "@@operators_allowed_for_child_policies": ["@@none"], "@@assign": "dataType" }, "tag_value": { "@@operators_allowed_for_child_policies": ["@@none"], "@@assign": [ "PII", "RED" ] } } } }, "advanced_backup_settings": { "@@operators_allowed_for_child_policies": ["@@none"], "ec2": { "@@operators_allowed_for_child_policies": ["@@none"], "windows_vss": { "@@assign": "enabled", "@@operators_allowed_for_child_policies": ["@@none"] } } } } } }
Politique effective résultante : si des politiques de sauvegarde enfants existent, elles sont ignorées et la politique parente devient la politique effective.
{ "plans": { "PII_Backup_Plan": { "regions": [ "us-east-1", "ap-northeast-3", "eu-north-1" ], "rules": { "hourly": { "schedule_expression": "cron(0 0/1 ? * * *)", "start_backup_window_minutes": "60", "target_backup_vault_name": "FortKnox", "index_actions": { "resource_types": { "@@assign": [ "EBS", "S3" ] } }, "lifecycle": { "delete_after_days": "2", "move_to_cold_storage_after_days": "180", "opt_in_to_archive_for_supported_resources": "false" }, "copy_actions": { "target_backup_vault_arn": "arn:aws:backup:us-east-1:123456789012:backup-vault:secondary_vault", "lifecycle": { "move_to_cold_storage_after_days": "28", "delete_after_days": "180", "opt_in_to_archive_for_supported_resources": "false" } } } }, "selections": { "tags": { "datatype": { "iam_role_arn": "arn:aws:iam::123456789012:role/MyIamRole", "tag_key": "dataType", "tag_value": [ "PII", "RED" ] } } }, "advanced_backup_settings": { "ec2": {"windows_vss": "enabled"} } } } }
Exemple 4 : Une politique parente empêche les modifications d'un plan de sauvegarde par une politique enfant
Dans l'exemple suivant, une politique parente héritée utilise les opérateurs de contrôle enfants pour appliquer les paramètres d'un plan unique et les empêche d'être modifiés ou remplacés par une politique enfant. La politique enfant peut encore ajouter des plans supplémentaires.
Politique parente : cette politique peut être attachée à la racine de l'organisation ou à une UO parente. Cet exemple est similaire au précédent où tous les opérateurs d'héritage enfants sont bloqués, sauf au niveau supérieur plans
. Le paramètre @@append
à ce niveau permet aux politiques enfants d'ajouter d'autres plans à l'ensemble dans la politique effective. Toutes les modifications du plan hérité sont toujours bloquées.
Les sections du plan sont tronquées pour plus de clarté.
{ "plans": { "@@operators_allowed_for_child_policies": ["@@append"], "PII_Backup_Plan": { "@@operators_allowed_for_child_policies": ["@@none"], "regions": { ... }, "rules": { ... }, "selections": { ... } } } }
Politique enfant : cette politique peut être attachée directement au compte ou à une UO dans n'importe quel niveau inférieur à celui auquel la politique parente est attachée. Cette politique enfant définit un nouveau plan.
Les sections du plan sont tronquées pour plus de clarté.
{ "plans": { "MonthlyBackupPlan": { "regions": { ... }, "rules": { ... }, "selections": { … } } } }
Politique effective résultante : la politique effective inclut les deux plans.
{ "plans": { "PII_Backup_Plan": { "regions": { ... }, "rules": { ... }, "selections": { ... } }, "MonthlyBackupPlan": { "regions": { ... }, "rules": { ... }, "selections": { … } } } }
Exemple 5 : Une politique enfant remplace les paramètres d'une politique parente
Dans l'exemple suivant, une politique enfant utilise des opérateurs de définition de valeur pour remplacer certains des paramètres hérités d'une politique parente.
Politique parente : cette politique peut être attachée à la racine de l'organisation ou à une UO parente. Tous les paramètres peuvent être remplacés par une politique enfant, car le comportement par défaut, en l'absence d'un opérateur de contrôle enfant qui l'empêche, est d'autoriser la politique enfant à @@assign
, @@append
ou @@remove
. La politique parente contient tous les éléments requis pour un plan de sauvegarde valable, de sorte qu'elle sauvegarde vos ressources correctement si elles sont héritées en l'état.
{ "plans": { "PII_Backup_Plan": { "regions": { "@@append": [ "us-east-1", "ap-northeast-3", "eu-north-1" ] }, "rules": { "Hourly": { "schedule_expression": {"@@assign": "cron(0 0/1 ? * * *)"}, "start_backup_window_minutes": {"@@assign": "60"}, "target_backup_vault_name": {"@@assign": "FortKnox"}, "index_actions": { "resource_types": { "@@assign": [ "EBS", "S3" ] } }, "lifecycle": { "delete_after_days": {"@@assign": "2"}, "move_to_cold_storage_after_days": {"@@assign": "180"}, "opt_in_to_archive_for_supported_resources": {"@@assign": false} }, "copy_actions": { "arn:aws:backup:us-east-1:$account:backup-vault:t2": { "target_backup_vault_arn": {"@@assign": "arn:aws:backup:us-east-1:$account:backup-vault:t2"}, "lifecycle": { "move_to_cold_storage_after_days": {"@@assign": "28"}, "delete_after_days": {"@@assign": "180"}, "opt_in_to_archive_for_supported_resources": {"@@assign": false} } } } } }, "selections": { "tags": { "datatype": { "iam_role_arn": {"@@assign": "arn:aws:iam::$account:role/MyIamRole"}, "tag_key": {"@@assign": "dataType"}, "tag_value": { "@@assign": [ "PII", "RED" ] } } } } } } }
Politique enfant : la politique enfant inclut uniquement les paramètres qui doivent être différents de ceux de la politique parente héritée. Il doit y avoir une politique parente héritée qui fournit les autres paramètres requis lors de la fusion dans une politique effective. Sinon, la politique de sauvegarde effective contient un plan de sauvegarde non valable qui ne sauvegarde pas vos ressources comme prévu.
{ "plans": { "PII_Backup_Plan": { "regions": { "@@assign": [ "us-west-2", "eu-central-1" ] }, "rules": { "Hourly": { "schedule_expression": {"@@assign": "cron(0 0/2 ? * * *)"}, "start_backup_window_minutes": {"@@assign": "80"}, "target_backup_vault_name": {"@@assign": "Default"}, "lifecycle": { "move_to_cold_storage_after_days": {"@@assign": "30"}, "delete_after_days": {"@@assign": "365"}, "opt_in_to_archive_for_supported_resources": {"@@assign": false} } } } } } }
Politique effective résultante : la politique effective inclut les paramètres des deux politiques, ceux fournis par la politique enfant remplaçant les paramètres hérités de la politique parente. Dans cet exemple, les modifications suivantes se produisent :
-
La liste des régions est remplacée par une liste complètement différente. Si vous souhaitez ajouter une région à la liste héritée, utilisez
@@append
au lieu de@@assign
dans la politique enfant. -
AWS Backup effectue la tâche toutes les deux heures au lieu de toutes les heures.
-
AWS Backup accorde 80 minutes pour démarrer la sauvegarde au lieu de 60 minutes.
-
AWS Backup utilise le
Default
coffre au lieu deFortKnox
. -
Le cycle de vie est prolongé pour le transfert vers le stockage à froid et la suppression à terme de la sauvegarde.
{ "plans": { "PII_Backup_Plan": { "regions": [ "us-west-2", "eu-central-1" ], "rules": { "hourly": { "schedule_expression": "cron(0 0/2 ? * * *)", "start_backup_window_minutes": "80", "target_backup_vault_name": "Default", "index_actions": { "resource_types": { "@@assign": [ "EBS", "S3" ] } }, "lifecycle": { "delete_after_days": "365", "move_to_cold_storage_after_days": "30", "opt_in_to_archive_for_supported_resources": "false" }, "copy_actions": { "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault": { "target_backup_vault_arn": {"@@assign": "arn:aws:backup:us-east-1:$account:backup-vault:secondary_vault"}, "lifecycle": { "move_to_cold_storage_after_days": "28", "delete_after_days": "180", "opt_in_to_archive_for_supported_resources": "false" } } } } }, "selections": { "tags": { "datatype": { "iam_role_arn": "arn:aws:iam::$account:role/MyIamRole", "tag_key": "dataType", "tag_value": [ "PII", "RED" ] } } } } } }
Exemple 6 : Spécification des ressources avec le tags
bloc
L'exemple suivant inclut toutes les ressources avec les tag_key
symboles = “env”
et tag_value
= "prod"
et"gamma"
. Cet exemple exclut les ressources avec le tag_key
= "backup"
et le tag_value
="false"
.
... "selections":{ "tags":{ "
selection_name
":{ "iam_role_arn": {"@@assign": "arn:aws:iam::$account:role/IAMRole"}, "tag_key":{"@@assign": "env"}, "tag_value":{"@@assign": ["prod", "gamma"]}, "conditions":{ "string_not_equals":{ "condition_name1
":{ "condition_key": { "@@assign": "aws:ResourceTag/backup" }, "condition_value": { "@@assign": "false" } } } } } } }, ...
Exemple 7 : Spécification des ressources avec le resources
bloc
Voici des exemples d'utilisation du resources
bloc pour spécifier des ressources.