Class CfnGroup

All Implemented Interfaces:
IConstruct, IDependable, IInspectable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:29:57.227Z") @Stability(Stable) public class CfnGroup extends CfnResource implements IInspectable
A CloudFormation AWS::IAM::Group.

Creates a new group.

For information about the number of groups you can create, see Limitations on IAM Entities in the IAM User Guide .

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.iam.*;
 Object policyDocument;
 CfnGroup cfnGroup = CfnGroup.Builder.create(this, "MyCfnGroup")
         .groupName("groupName")
         .managedPolicyArns(List.of("managedPolicyArns"))
         .path("path")
         .policies(List.of(PolicyProperty.builder()
                 .policyDocument(policyDocument)
                 .policyName("policyName")
                 .build()))
         .build();
 
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnGroup

      protected CfnGroup(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnGroup

      protected CfnGroup(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnGroup

      @Stability(Stable) public CfnGroup(@NotNull Construct scope, @NotNull String id, @Nullable CfnGroupProps props)
      Create a new AWS::IAM::Group.

      Parameters:
      scope -
      • scope in which this resource is defined.
      This parameter is required.
      id -
      • scoped id of the resource.
      This parameter is required.
      props -
      • resource properties.
    • CfnGroup

      @Stability(Stable) public CfnGroup(@NotNull Construct scope, @NotNull String id)
      Create a new AWS::IAM::Group.

      Parameters:
      scope -
      • scope in which this resource is defined.
      This parameter is required.
      id -
      • scoped id of the resource.
      This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector -
      • tree inspector to collect and process attributes.
      This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getAttrArn

      @Stability(Stable) @NotNull public String getAttrArn()
      Returns the Amazon Resource Name (ARN) for the specified AWS::IAM::Group resource.

      For example: arn:aws:iam::123456789012:group/mystack-mygroup-1DZETITOWEKVO .

    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getGroupName

      @Stability(Stable) @Nullable public String getGroupName()
      The name of the group to create. Do not include the path in this value.

      The group name must be unique within the account. Group names are not distinguished by case. For example, you cannot create groups named both "ADMINS" and "admins". If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the group name.

      If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.

      If you specify a name, you must specify the CAPABILITY_NAMED_IAM value to acknowledge your template's capabilities. For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates .

      Naming an IAM resource can cause an unrecoverable error if you reuse the same template in multiple Regions. To prevent this, we recommend using Fn::Join and AWS::Region to create a Region-specific name, as in the following example: {"Fn::Join": ["", [{"Ref": "AWS::Region"}, {"Ref": "MyResourceName"}]]} .

    • setGroupName

      @Stability(Stable) public void setGroupName(@Nullable String value)
      The name of the group to create. Do not include the path in this value.

      The group name must be unique within the account. Group names are not distinguished by case. For example, you cannot create groups named both "ADMINS" and "admins". If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the group name.

      If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.

      If you specify a name, you must specify the CAPABILITY_NAMED_IAM value to acknowledge your template's capabilities. For more information, see Acknowledging IAM Resources in AWS CloudFormation Templates .

      Naming an IAM resource can cause an unrecoverable error if you reuse the same template in multiple Regions. To prevent this, we recommend using Fn::Join and AWS::Region to create a Region-specific name, as in the following example: {"Fn::Join": ["", [{"Ref": "AWS::Region"}, {"Ref": "MyResourceName"}]]} .

    • getManagedPolicyArns

      @Stability(Stable) @Nullable public List<String> getManagedPolicyArns()
      The Amazon Resource Name (ARN) of the IAM policy you want to attach.

      For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .

    • setManagedPolicyArns

      @Stability(Stable) public void setManagedPolicyArns(@Nullable List<String> value)
      The Amazon Resource Name (ARN) of the IAM policy you want to attach.

      For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .

    • getPath

      @Stability(Stable) @Nullable public String getPath()
      The path to the group. For more information about paths, see IAM identifiers in the IAM User Guide .

      This parameter is optional. If it is not included, it defaults to a slash (/).

      This parameter allows (through its regex pattern ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! ( \ u0021 ) through the DEL character ( \ u007F ), including most punctuation characters, digits, and upper and lowercased letters.

    • setPath

      @Stability(Stable) public void setPath(@Nullable String value)
      The path to the group. For more information about paths, see IAM identifiers in the IAM User Guide .

      This parameter is optional. If it is not included, it defaults to a slash (/).

      This parameter allows (through its regex pattern ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! ( \ u0021 ) through the DEL character ( \ u007F ), including most punctuation characters, digits, and upper and lowercased letters.

    • getPolicies

      @Stability(Stable) @Nullable public Object getPolicies()
      Adds or updates an inline policy document that is embedded in the specified IAM group.

      To view AWS::IAM::Group snippets, see Declaring an IAM Group Resource .

      The name of each inline policy for a role, user, or group must be unique. If you don't choose unique names, updates to the IAM identity will fail.

      For information about limits on the number of inline policies that you can embed in a group, see Limitations on IAM Entities in the IAM User Guide .

    • setPolicies

      @Stability(Stable) public void setPolicies(@Nullable IResolvable value)
      Adds or updates an inline policy document that is embedded in the specified IAM group.

      To view AWS::IAM::Group snippets, see Declaring an IAM Group Resource .

      The name of each inline policy for a role, user, or group must be unique. If you don't choose unique names, updates to the IAM identity will fail.

      For information about limits on the number of inline policies that you can embed in a group, see Limitations on IAM Entities in the IAM User Guide .

    • setPolicies

      @Stability(Stable) public void setPolicies(@Nullable List<Object> value)
      Adds or updates an inline policy document that is embedded in the specified IAM group.

      To view AWS::IAM::Group snippets, see Declaring an IAM Group Resource .

      The name of each inline policy for a role, user, or group must be unique. If you don't choose unique names, updates to the IAM identity will fail.

      For information about limits on the number of inline policies that you can embed in a group, see Limitations on IAM Entities in the IAM User Guide .