# RoleOptions

Options for specifying a role.

- Source: [`core/lib/stack-synthesizers/asset-manifest-builder.ts`](https://github.com/aws/aws-cdk/blob/v2.274.0/packages/aws-cdk-lib/core/lib/stack-synthesizers/asset-manifest-builder.ts#L277)
- Type last changed: v2.160.0 · 24 Sep 2024

## Example

```ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import * as cdk from 'aws-cdk-lib';

declare const assumeRoleAdditionalOptions: any;
const roleOptions: cdk.RoleOptions = {
  assumeRoleArn: 'assumeRoleArn',

  // the properties below are optional
  assumeRoleAdditionalOptions: {
    assumeRoleAdditionalOptionsKey: assumeRoleAdditionalOptions,
  },
  assumeRoleExternalId: 'assumeRoleExternalId',
};
```

## Properties

- `assumeRoleAdditionalOptions`: { [key: string]: any } = No additional options. — Additional options to pass to STS when assuming the role for cloudformation deployments.

  - `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.
  - `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead.
  - `TransitiveTagKeys` defaults to use all keys (if any) specified in `Tags`. E.g, all tags are transitive by default.

- `assumeRoleArn`: string (required) — ARN of the role to assume.

- `assumeRoleExternalId`: string = No external ID — External ID to use when assuming the role.
