Tokens de acesso
Download do arquivo de configuração de ambiente
O arquivo deve ser baixado no menu superior direito, no terceiro item, conforme figura abaixo. O arquivo segue o padrão POSIX e o padrão de nomenclatura das variáveis Openstack. Portanto, as variáveis nele definidas, assim como em outras clouds podem ser utilizadas para diversas ferramentas client e frameworks.

É importante que caso você tenha acesso a mais de um tenant (projeto) da NNumbers Cloud, seu ambiente esteja previamente selecionado no menu superior esquerdo.

Configuração das variáveis de ambiente
Uma vez de posse do arquivo baixado[\8], é necessário aplicá-lo ao ambiente para que as variáveis de ambiente sejam configuradas, conforme comando[\9] abaixo:
source <TENANT-NAME>-openrc.sh
Após a execução do comando as seguintes variáveis de ambiente[\10]](./glossario) estarão disponíveis:

A chamada a essa API é restrita por rate limit que pode variar conforme o tipo de conta. Portanto, minimize a chamada para obtenção de tokens para que sua aplicação não fique impedida de utilização por um tempo.
Criação de token de acesso à partir de credenciais de aplicação
Para a criação de credenciais de aplicação veja Criar Credencial de Aplicação
Configure as credenciais de aplicação em variáveis de ambiente.
CLOUD_APP_ID="<APPLICATION_CREDENTIAL_ID>"
CLOUD_APP_SECRET="<APPLICATION_CREDENTIAL_SECRET>"
Execute a chamada para a API.
X_AUTH_TOKEN=$(curl -g -i -X POST https://cloud.nnumbers.com.br:5000/v3/auth/tokens/ \
-H "Content-Type: application/json" \
-d '
{ "auth": { "identity": { "methods": ["application_credential"], "application_credential": { "id": "$CLOUD_APP_ID", "secret": "$CLOUD_APP_SECRET" } } } }' \
2>&1 | grep x-subject-token | awk '{print $2}' | sed 's/[\n|\r]//g')
# imprime token de acesso retornado no header “x-subject-token”
echo $X_AUTH_TOKEN
Criação de token de acesso à partir de credenciais de usuário
Os comandos abaixo armazenam os cabeçalhos de resposta da requisição da API no arquivo headers e o payload no arquivo token_info, de onde são extraídas mais duas variáveis de ambiente, OS_TOKEN e OS_USER_ID, as quais também serão utilizadas na próxima requisição.
curl -s -D headers -H "Content-Type: application/json" -d '
{ "auth": {
"identity": {
"methods": ["password"],
"password": {
"user": {
"name": "'$OS_USERNAME'",
"domain": { "name": "'$OS_USER_DOMAIN_NAME'" },
"password": "'$OS_PASSWORD'"
}
}
},
"scope": {
"project": {
"name": "'$OS_PROJECT_NAME'",
"domain": { "name": "'$OS_USER_DOMAIN_NAME'" }
}
}
}
}' "${OS_AUTH_URL}/v${OS_IDENTITY_API_VERSION}/auth/tokens" > token_info
export OS_TOKEN=$(egrep -i "^X-Subject-Token:" headers | awk '{print $2}')
export OS_USER_ID=$(cat token_info | jq -r '.["token"]["user"]["id"]')
Próximos passos
Esta página ajudou?
Reportar um problema nesta páginaNão envie senhas, chaves, tokens ou dados de clientes.