cdk-assume-role-plugin
Version:
Adds assume role and mfa support to cdk apps
66 lines (48 loc) • 1.68 kB
Markdown
[](https://github.com/hupe1980/cdk-multi-profile-plugin/workflows/Build/badge.svg)
> Adds assume role and mfa support to cdk apps
:warning: This is experimental and subject to breaking changes.
```bash
npm install cdk-assume-role-plugin
```
There are two ways to tell cdk to use the plugin. The first way is to include an explicit --plugin option whenever you use a cdk command.
```bash
npx cdk deploy --plugin "cdk-assume-role-plugin" *Stack
```
The second way is to add the following entry to the cdk.json file
```javascript
// cdk.json
{
"app": "npx ts-node bin/YOURAPP.ts",
"plugin": ["cdk-assume-role-plugin"]
}
```
Finally, add the account / profile mapping in the package.json
```javascript
// package.json
{
...
"devDependencies": {
"aws-cdk": "^1.15.0",
"cdk-assume-role-plugin": "^0.0.1",
...
},
...
"cdkAssumeRolePlugin": {
"userProfile": "idp",
"roles": {
"YOUR_ACCOUNT_ID": "YOUR_ROLE_NAME",
"YOUR_ACCOUNT_ID": "YOUR_ROLE_NAME"
}
}
}
```
The plugin supports the following environment variables:
- `AWS_SHARED_CREDENTIALS_FILE` – Specifies the location of the file that the AWS CLI uses to store access keys. The default path is `~/.aws/credentials`).
- `IGNORE_CDK_ASSUME_ROLE_PLUGIN=true` - Turn off the plugin. Defaults to `false`.
- `CDK_ASSUME_ROLE_PLUGIN_CONFIG` - Specifies the localtion of the global plugin config. Defaults to `~/.cdkassumeroleplugin.json`
[](LICENSE)