É possível obter o id da conta aws com apenas aws access key e secret key na linha de comando (CLI)

6

É possível obter o ID da conta aws com apenas uma chave de acesso aws e uma chave secreta na linha de comando (CLI)

Eu tenho chave de acesso e chave secreta comigo. É possível obter o id da conta usando aqueles na linha de comando.

    
por Vandhana 12.11.2018 / 05:43

2 respostas

6

Esta é a maneira correta:

~ $ aws sts get-caller-identity
{
    "Account": "123456789012", 
    "UserId": "AIDABCDEFGHJKL...", 
    "Arn": "arn:aws:iam::123456789012:user/some.user"
}

Funciona para usuários do IAM, funções de IAM de várias contas, funções de IAM do EC2, etc.

Use junto com jq para obter apenas o ID da conta:

~ $ aws sts get-caller-identity | jq -r .Account
123456789012

Espero que ajude:)

    
por 12.11.2018 / 06:51
0

Quase todos os objetos da AWS incluem o ID da conta. Por exemplo, meu usuário do IAM é arn: aws: iam :: ACCOUNT_ID: user / Andrew.Lorien e o ID de uma das minhas pilhas de cloudformation é arn: aws: cloudformation: us-west-2: ACCOUNT_ID: stack / my- repositório / 12345678-90ab-cdef-1234-567890abcdef. Então você pode consultar qualquer coisa que você sabe que você tem, e extrair o ID disso. Aqui está um one-liner bash que pega o primeiro usuário IAM (uma string como arn: aws: iam :: ACCOUNT_ID: user / USER_NAME)  e extrai o ID da conta.

aws iam list-users --query "Users[0].Arn" --output text | cut -d ":" -f 5
    
por 12.11.2018 / 06:31