Class ManagedPolicyProps.Builder

java.lang.Object
software.amazon.awscdk.services.iam.ManagedPolicyProps.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<ManagedPolicyProps>
Enclosing interface:
ManagedPolicyProps

@Stability(Stable) public static final class ManagedPolicyProps.Builder extends Object implements software.amazon.jsii.Builder<ManagedPolicyProps>
A builder for ManagedPolicyProps
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • description

      @Stability(Stable) public ManagedPolicyProps.Builder description(String description)
      Parameters:
      description - A description of the managed policy. Typically used to store information about the permissions defined in the policy. For example, "Grants access to production DynamoDB tables." The policy description is immutable. After a value is assigned, it cannot be changed.
      Returns:
      this
    • document

      @Stability(Stable) public ManagedPolicyProps.Builder document(PolicyDocument document)
      Parameters:
      document - Initial PolicyDocument to use for this ManagedPolicy. If omited, any PolicyStatement provided in the statements property will be applied against the empty default PolicyDocument.
      Returns:
      this
    • groups

      @Stability(Stable) public ManagedPolicyProps.Builder groups(List<? extends IGroup> groups)
      Parameters:
      groups - Groups to attach this policy to. You can also use attachToGroup(group) to attach this policy to a group.
      Returns:
      this
    • managedPolicyName

      @Stability(Stable) public ManagedPolicyProps.Builder managedPolicyName(String managedPolicyName)
      Parameters:
      managedPolicyName - The name of the managed policy. If you specify multiple policies for an entity, specify unique names. For example, if you specify a list of policies for an IAM role, each policy must have a unique name.
      Returns:
      this
    • path

      @Stability(Stable) public ManagedPolicyProps.Builder path(String path)
      Parameters:
      path - The path for the policy. 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 ! (!) through the DEL character (), including most punctuation characters, digits, and upper and lowercased letters.

      For more information about paths, see IAM Identifiers in the IAM User Guide.

      Returns:
      this
    • roles

      @Stability(Stable) public ManagedPolicyProps.Builder roles(List<? extends IRole> roles)
      Parameters:
      roles - Roles to attach this policy to. You can also use attachToRole(role) to attach this policy to a role.
      Returns:
      this
    • statements

      @Stability(Stable) public ManagedPolicyProps.Builder statements(List<? extends PolicyStatement> statements)
      Parameters:
      statements - Initial set of permissions to add to this policy document. You can also use addPermission(statement) to add permissions later.
      Returns:
      this
    • users

      @Stability(Stable) public ManagedPolicyProps.Builder users(List<? extends IUser> users)
      Parameters:
      users - Users to attach this policy to. You can also use attachToUser(user) to attach this policy to a user.
      Returns:
      this
    • build

      @Stability(Stable) public ManagedPolicyProps build()
      Builds the configured instance.
      Specified by:
      build in interface software.amazon.jsii.Builder<ManagedPolicyProps>
      Returns:
      a new instance of ManagedPolicyProps
      Throws:
      NullPointerException - if any required attribute was not provided