IIdentity

class aws_cdk.aws_iam.IIdentity(*args, **kwargs)

Bases: IPrincipal, IResource, Protocol

A construct that represents an IAM principal, such as a user, group or role.

Methods

add_managed_policy(policy)

Attaches a managed policy to this principal.

Parameters:

policy (IManagedPolicy) – The managed policy.

Return type:

None

add_to_principal_policy(statement)

Add to the policy of this principal.

Parameters:

statement (PolicyStatement) –

Return type:

AddToPrincipalPolicyResult

apply_removal_policy(policy)

Apply the given removal policy to this resource.

The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you’ve removed it from the CDK application or because you’ve made a change that requires the resource to be replaced.

The resource can be deleted (RemovalPolicy.DESTROY), or left in your AWS account for data recovery and cleanup later (RemovalPolicy.RETAIN).

Parameters:

policy (RemovalPolicy) –

Return type:

None

attach_inline_policy(policy)

Attaches an inline policy to this principal.

This is the same as calling policy.addToXxx(principal).

Parameters:

policy (Policy) – The policy resource to attach to this principal [disable-awslint:ref-via-interface].

Return type:

None

Attributes

assume_role_action

When this Principal is used in an AssumeRole policy, the action to use.

env

The environment this resource belongs to.

For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.

grant_principal

The principal to grant permissions to.

node

The tree node.

policy_fragment

Return the policy fragment that identifies this principal in a Policy.

principal_account

The AWS account ID of this principal.

Can be undefined when the account is not known (for example, for service principals). Can be a Token - in that case, it’s assumed to be AWS::AccountId.

stack

The stack in which this resource is defined.