AWS::Organizations::PolicyCreates a policy of a specified type that you can attach to a root, an organizational unit (OU), or an individual AWS account . For more information about policies and their use, see [Managing AWS Organizations policies](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies.html) . If the request includes tags, then the requester must have the `organizations:TagResource` permission. This operation can be called only from the organization's management account or a member account designated as a delegated administrator. > Before you can create a policy of a given type, you must first [enable that policy type](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_enable-disable.html) in your organization.
import { CfnPolicy } from 'aws-cdk-lib/aws-organizations';Or use the module namespace:
import * as organizations from 'aws-cdk-lib/aws-organizations';
// organizations.CfnPolicyConfiguration passed to the constructor as CfnPolicyProps.
contentRequiredanyThe policy text content. You can specify the policy content as a JSON object or a JSON string. > When you specify the policy content as a JSON string, you can't perform drift detection on the CloudFormation stack. For this reason, we recommend specifying the policy content as a JSON object instead. The text that you supply must adhere to the rules of the policy type you specify in the `Type` parameter. The following AWS Organizations quotas are enforced for the maximum size of a policy document: - Service control policies: 5,120 characters - Resource control policies: 5,120 characters - Declarative policies: 10,000 characters - Backup policies: 10,000 characters - Tag policies: 10,000 characters - Chat applications policies: 10,000 characters - AI services opt-out policies: 2,500 characters - Security Hub policies: 10,000 characters - Amazon Inspector policies: 10,000 characters - Amazon Bedrock policies: 10,000 characters - Upgrade rollout policies: 10,000 characters For more information about Organizations service quotas, see [Quotas for AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_reference_limits.html) in the *AWS Organizations User Guide* .
nameRequiredstringName of the policy. The [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex) that is used to validate this parameter is a string of any of the characters in the ASCII character range.
typeRequiredstringThe type of policy to create.
descriptionOptionalstringHuman readable description of the policy.
tagsOptionalCfnTag[]A list of tags that you want to attach to the newly created policy. For each tag in the list, you must specify both a tag key and a value. You can set the value to an empty string, but you can't set it to `null` . For more information about tagging, see [Tagging AWS Organizations resources](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_tagging.html) in the AWS Organizations User Guide. > If any one of the tags is not valid or if you exceed the allowed number of tags for a policy, then the entire request fails and the policy is not created.
targetIdsOptionalstring[]List of unique identifiers (IDs) of the root, OU, or account that you want to attach the policy to. You can get the ID by calling the [ListRoots](https://docs.aws.amazon.com/organizations/latest/APIReference/API_ListRoots.html) , [ListOrganizationalUnitsForParent](https://docs.aws.amazon.com/organizations/latest/APIReference/API_ListOrganizationalUnitsForParent.html) , or [ListAccounts](https://docs.aws.amazon.com/organizations/latest/APIReference/API_ListAccounts.html) operations. If you don't specify this parameter, the policy is created but not attached to any organization resource. The [regex pattern](https://docs.aws.amazon.com/http://wikipedia.org/wiki/regex) for a target ID string requires one of the following: - *Root* - A string that begins with "r-" followed by from 4 to 32 lowercase letters or digits. - *Account* - A string that consists of exactly 12 digits. - *Organizational unit (OU)* - A string that begins with "ou-" followed by from 4 to 32 lowercase letters or digits (the ID of the root that the OU is in). This string is followed by a second "-" dash and from 8 to 32 additional lowercase letters or digits.
This L1 construct maps directly to the following CloudFormation resource type.
Our bi-weekly newsletter teaches hands-on AWS fundamentals. No certification fluff - just practical knowledge.
Subscribe to Newsletteraws-organizationsAWS::Organizations::Policy