@serverless-devs/acc

1.1.3 • Public • Published

Alibaba Cloud Credentials CLI

Node.js CI npm version codecov

Installation

Install it via NPM.

$ npm i @alicloud/acc -g

You will get a command that named acc. Test it in terminal:

$ acc
Alibaba Cloud Credentials CLI v0.0.1

   help              print help information
   version           print version
   completion        auto completion
   list              list alibaba cloud cli configurations
   run               run command with profile

Usage

List all credentials

$ acc list
 # | Profile             | Credential 
---|---------------------|----------
   | default             | AK:***C44
   | pager               | AK:***TrK
   | jacksontian         | AK:***zwR
   | sts                 | AK:***est
   | shyvo               | AK:***73a
   | ecsramrole          | EcsRamRole:rolename
   | sso                 | External:acs-sso login
   | nexttoken           | AK:***HZt
   | ramrole             | RamRoleArn:***73a/acs:ram::20899859:role/my
   | chain               | ChainableRamRoleArn:shyvo:acs:ram::1325847523475998:role/read-ecs
   | cli-test            | AK:***461
   | uri                 | CredentialsURI:http://localhost:6666/?user=jacksontian
   | ids-dev             | External:acs-sso login --profile ids-dev
   | test                | External:node /Users/jacksontian/go/src/github.com/aliyun/aliyun-cli/test.js
 * | puling_ram_role_arn | RamRoleArn:***sUT/acs:ram::1325847523475998:role/fc-test

Run with credentials

default mode:

$ acc run --profile default
export ALIBABACLOUD_ACCESS_KEY_ID=akid
export ALICLOUD_ACCESS_KEY_ID=akid
export ALIBABACLOUD_ACCESS_KEY_SECRET=aksecret
export ALICLOUD_ACCESS_KEY_SECRET=aksecret

acc run will print environment variables to stdout. It can be used like this:

$ `acc run --profile default` # set ak&sk&security into environment variables
$ aliyun sts GetCallerIdentity # use it from environment variables

split mode:

$ acc run --profile default -- aliyun sts GetCallerIdentity
{
   "AccountId": "132584752347***",
   "Arn": "acs:ram::132584752347****:assumed-role/fc-test/test***",
   "IdentityType": "AssumedRoleUser",
   "PrincipalId": "34223406312260****:test****",
   "RequestId": "B2B1BD67-1B4F-5C6F-B318-AF175D47****",
   "RoleId": "342234063122600***"
}

ACC use -- to split acc run and real command. acc run will get AK/STS with specify profile name, and set it into environment variables, then spawn aliyun sts GetCallerIdentity command. If real command can consume the three environment variables(ALIBABACLOUD_ACCESS_KEY_ID, ALIBABACLOUD_ACCESS_KEY_SECRET, ALIBABACLOUD_SECURITY_TOKEN), it can be composed to use.

License

Apache License 2.0.

Readme

Keywords

none

Package Sidebar

Install

npm i @serverless-devs/acc

Weekly Downloads

154

Version

1.1.3

License

Apache License 2.0

Unpacked Size

33 kB

Total Files

9

Last publish

Collaborators

  • serverlessfans
  • heimanba
  • xsahxl