Role
- Implements: IRole, IPrincipal
This class encapsulates and extends the ROS resource type ALIYUN::RAM::Role.
Initializers
import ros_cdk_ram
ros_cdk_ram.Role(
scope: Construct,
id: str,
assume_role_policy_document: typing.Union[IResolvable, AssumeRolePolicyDocumentProperty],
role_name: typing.Union[str, IResolvable],
deletion_force: typing.Union[bool, IResolvable] = None,
description: typing.Union[str, IResolvable] = None,
ignore_existing: typing.Union[bool, IResolvable] = None,
max_session_duration: typing.Union[typing.Union[int, float], IResolvable] = None,
policies: typing.Union[IResolvable, typing.List[typing.Union[IResolvable, PoliciesProperty]]] = None,
policy_attachments: typing.Union[IResolvable, PolicyAttachmentsProperty] = None,
tags: typing.List[TagsProperty] = None,
enable_resource_property_constraint: bool = None
)
| Name | Type | Description |
|---|---|---|
scope | ros_cdk_core.Construct | No description. |
id | str | No description. |
assume_role_policy_document | typing.Union[ros_cdk_core.IResolvable, AssumeRolePolicyDocumentProperty] | Property assumeRolePolicyDocument: The RAM assume role policy that is associated with this role. |
role_name | typing.Union[str, ros_cdk_core.IResolvable] | Property roleName: Specifies the role name, containing up to 64 characters. |
deletion_force | typing.Union[bool, ros_cdk_core.IResolvable] | Property deletionForce: Whether force detach the policies attached to the role. |
description | typing.Union[str, ros_cdk_core.IResolvable] | Property description: Remark information, up to 1024 characters or Chinese characters. |
ignore_existing | typing.Union[bool, ros_cdk_core.IResolvable] | Property ignoreExisting: Whether to ignore existing role False: ROS will perform a uniqueness check.If a role with the same name exists, an error will be reported when creating it. True: ROS will not check the uniqueness.If there is a role with the same name, the role creation process will be ignored. If the role is not created by ROS, it will be ignored during update and delete stage. |
max_session_duration | typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] | Property maxSessionDuration: The maximum session duration of the RAM role. |
policies | typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, PoliciesProperty]]] | Property policies: Describes what actions are allowed on what resources. |
policy_attachments | typing.Union[ros_cdk_core.IResolvable, PolicyAttachmentsProperty] | Property policyAttachments: System and custom policy names to attach. |
tags | typing.List[TagsProperty] | Property tags: Tags to attach to role. |
enable_resource_property_constraint | bool | No description. |
scopeRequired
- Type: ros_cdk_core.Construct
idRequired
- Type: str
assume_role_policy_documentRequired
- Type: typing.Union[ros_cdk_core.IResolvable, AssumeRolePolicyDocumentProperty]
Property assumeRolePolicyDocument: The RAM assume role policy that is associated with this role.
role_nameRequired
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property roleName: Specifies the role name, containing up to 64 characters.
deletion_forceOptional
- Type: typing.Union[bool, ros_cdk_core.IResolvable]
Property deletionForce: Whether force detach the policies attached to the role.
Default value is false.
descriptionOptional
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property description: Remark information, up to 1024 characters or Chinese characters.
ignore_existingOptional
- Type: typing.Union[bool, ros_cdk_core.IResolvable]
Property ignoreExisting: Whether to ignore existing role False: ROS will perform a uniqueness check.If a role with the same name exists, an error will be reported when creating it. True: ROS will not check the uniqueness.If there is a role with the same name, the role creation process will be ignored. If the role is not created by ROS, it will be ignored during update and delete stage.
max_session_durationOptional
- Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]
Property maxSessionDuration: The maximum session duration of the RAM role.
Valid values: 3600 to 43200. Unit: seconds. Default value: 3600. The default value is used if the parameter is not specified.
policiesOptional
- Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, PoliciesProperty]]]
Property policies: Describes what actions are allowed on what resources.
policy_attachmentsOptional
- Type: typing.Union[ros_cdk_core.IResolvable, PolicyAttachmentsProperty]
Property policyAttachments: System and custom policy names to attach.
tagsOptional
- Type: typing.List[TagsProperty]
Property tags: Tags to attach to role.
Max support 20 tags to add during create role. Each tag with two properties Key and Value, and Key is required.
enable_resource_property_constraintOptional
- Type: bool
Methods
| Name | Description |
|---|---|
to_string | Returns a string representation of this construct. |
synthesize | Allows this construct to emit artifacts into the cloud assembly during synthesis. |
add_condition | No description. |
add_count | No description. |
add_dependency | No description. |
add_resource_desc | No description. |
apply_removal_policy | No description. |
fetch_condition | No description. |
fetch_dependency | No description. |
fetch_resource_desc | No description. |
get_att | No description. |
set_metadata | No description. |
add_to_policy | Add to the policy of this principal. |
to_string
def to_string() -> str
Returns a string representation of this construct.
synthesize
def synthesize(
session: ISynthesisSession
) -> None
Allows this construct to emit artifacts into the cloud assembly during synthesis.
This method is usually implemented by framework-level constructs such as Stack and Asset as they participate in synthesizing the cloud assembly.
- Type: ros_cdk_core.ISynthesisSession
The synthesis session.
add_condition
def add_condition(
condition: RosCondition
) -> None
- Type: ros_cdk_core.RosCondition
add_count
def add_count(
count: typing.Union[typing.Union[int, float], IResolvable]
) -> None
- Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]
add_dependency
def add_dependency(
resource: Resource
) -> None
- Type: ros_cdk_core.Resource
add_resource_desc
def add_resource_desc(
desc: str
) -> None
- Type: str
apply_removal_policy
def apply_removal_policy(
policy: RemovalPolicy
) -> None
- Type: ros_cdk_core.RemovalPolicy
fetch_condition
def fetch_condition() -> RosCondition
fetch_dependency
def fetch_dependency() -> typing.List[str]
fetch_resource_desc
def fetch_resource_desc() -> str
get_att
def get_att(
name: str
) -> IResolvable
- Type: str
set_metadata
def set_metadata(
key: str,
value: typing.Any
) -> None
- Type: str
- Type: typing.Any
add_to_policy
def add_to_policy(
statement: typing.Union[IResolvable, typing.List[typing.Union[IResolvable, StatementProperty]]],
version: typing.Union[str, IResolvable]
) -> ManagedPolicy
Add to the policy of this principal.
- Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, StatementProperty]]]
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Static Functions
| Name | Description |
|---|---|
is_construct | Return whether the given object is a Construct. |
is_construct
import ros_cdk_ram
ros_cdk_ram.Role.is_construct(
x: typing.Any
)
Return whether the given object is a Construct.
- Type: typing.Any
Properties
| Name | Type | Description |
|---|---|---|
node | ros_cdk_core.ConstructNode | The construct tree node associated with this construct. |
env | ros_cdk_core.IResourceEnvironment | The environment this resource belongs to. |
ref | str | No description. |
stack | ros_cdk_core.Stack | The stack in which this resource is defined. |
resource | ros_cdk_core.RosResource | No description. |
attr_arn | typing.Union[str, ros_cdk_core.IResolvable] | Attribute Arn: Name of alicloud resource. |
attr_role_id | typing.Union[str, ros_cdk_core.IResolvable] | Attribute RoleId: Id of ram role. |
attr_role_name | typing.Union[str, ros_cdk_core.IResolvable] | Attribute RoleName: Name of ram role. |
grant_principal | IPrincipal | The principal to grant permissions to. |
principal_name | typing.Union[str, ros_cdk_core.IResolvable] | The principal to grant permissions to. |
principal_type | str | The principal type, such as 'Group', 'Role', 'User'. |
props | RoleProps | No description. |
nodeRequired
node: ConstructNode
- Type: ros_cdk_core.ConstructNode
The construct tree node associated with this construct.
envRequired
env: IResourceEnvironment
- Type: ros_cdk_core.IResourceEnvironment
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.
refRequired
ref: str
- Type: str
stackRequired
stack: Stack
- Type: ros_cdk_core.Stack
The stack in which this resource is defined.
resourceOptional
resource: RosResource
- Type: ros_cdk_core.RosResource
attr_arnRequired
attr_arn: typing.Union[str, IResolvable]
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Attribute Arn: Name of alicloud resource.
attr_role_idRequired
attr_role_id: typing.Union[str, IResolvable]
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Attribute RoleId: Id of ram role.
attr_role_nameRequired
attr_role_name: typing.Union[str, IResolvable]
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Attribute RoleName: Name of ram role.
grant_principalRequired
grant_principal: IPrincipal
- Type: IPrincipal
The principal to grant permissions to.
principal_nameRequired
principal_name: typing.Union[str, IResolvable]
- Type: typing.Union[str, ros_cdk_core.IResolvable]
The principal to grant permissions to.
principal_typeRequired
principal_type: str
- Type: str
The principal type, such as 'Group', 'Role', 'User'.
propsRequired
props: RoleProps
- Type: RoleProps