
Token de API da IONOS Cloud: DCD, validade, acesso somente leitura e revogação
Entenda onde gerar tokens da IONOS Cloud, quanto duram, como revogá-los e como limitar o acesso com usuários, grupos e compartilhamento de recursos.
DCD, Control Center e tipos de credencial
O token da Cloud API é criado no DCD, ou Data Center Designer, em Menu → Management → Token Manager. O DCD administra data centers virtuais, servidores, LANs e IP blocks. Já o painel my.ionos.com, frequentemente procurado como Control Center, é onde os produtos são contratados. Não é o local de criação desse token.
O Developer Portal de hospedagem emite API keys diferentes, com prefixo público e segredo enviados no cabeçalho X-API-Key. Elas configuram produtos de hospedagem, como domínios, DNS e SSL, depois da ativação do acesso pelo my.ionos.com. A Cloud API em https://api.ionos.com/cloudapi/v6 aceita token como Authorization: Bearer ou autenticação Basic. O token expira e pode ser revogado sem trocar a senha.
Geração e validade
No Token Manager, escolha Generate Token e um TTL da lista: 1 ou 4 horas, ou 1, 7, 30, 60, 90, 180 ou 365 dias. O valor aparece uma única vez e pode ser baixado naquele momento. Depois, a lista exibe ID, criação e vencimento, mas não revela novamente o segredo.
A Auth API aceita TTL em segundos, com mínimo de 60 e máximo de um ano. Um ano também é o padrão se nenhum prazo for pedido. A CLI aceita durações como 30D. Há limite de 100 tokens ativos por usuário. A geração por autenticação Basic só funciona se o usuário não tiver 2FA; com 2FA, gere o token no DCD. Para uma integração de leitura, o autor escolhe 90 dias e registra o vencimento, em vez de tratar o padrão de um ano como recomendação.
# Auth API: token de 30 dias (2.592.000 s) com usuário e senha
curl -s -u "$IONOS_USERNAME:$IONOS_PASSWORD" "https://api.ionos.com/auth/v1/tokens/generate?ttl=2592000"
# o mesmo com o ionosctl
ionosctl token generate --ttl 30D
# listar tokens do usuário e seus vencimentos
ionosctl token list
Como limitar o acesso
O token não tem permissões próprias: ele age com a identidade de quem o gerou. Um token criado por administrador tem acesso amplo ao contrato, mesmo que seja usado por uma ferramenta de inventário. Para limitar o alcance, crie um usuário não administrador e use o RBAC da IONOS com um grupo sem privilégios de gestão.
No DCD, abra Menu → Management → Users & Groups e crie o usuário e o grupo. Deixe desmarcados os privilégios de contrato, adicione o usuário como membro e use Resources of Group → Grant Access para compartilhar apenas data centers e IP blocks necessários. Edit e Share ficam desmarcados. Entre no DCD com essa conta e gere o token no Token Manager dela.
# grupo sem privilégios, com o usuário dentro
ionosctl compute group create --name "somente-leitura"
ionosctl compute group user add --group-id "$GROUP_ID" --user-id "$USER_ID"
# IDs dos recursos que podem ser compartilhados
ionosctl compute resource list
# um share por data center, sem --edit-privilege nem --share-privilege
ionosctl compute share create --group-id "$GROUP_ID" --resource-id "$DATACENTER_ID"
Conferência, exceções e revogação
Antes de inserir o token em uma ferramenta, confira sua identidade e alcance. ionosctl token parse mostra ID, usuário, contrato e papel; com --privileges, também mostra os privilégios da conta. A chamada à Cloud API permite listar os data centers visíveis. Se não houver resultados, verifique se o recurso foi compartilhado com o grupo.
Recursos criados pelo dono do contrato não ficam visíveis automaticamente para outros usuários. Métricas também são uma exceção. O privilégio de acesso e gestão de monitoramento permite consultar métricas e gerir alarmes. Esse acesso deixa de ser estritamente somente leitura. Para invalidar um token, use Delete no Token Manager ou exclua-o por ID ou critério. Com 2FA, a exclusão só pode ser feita no Token Manager. Também é possível retirar o acesso ao recurso removendo-o do grupo, sem invalidar o token inteiro.
ionosctl token parse --token "$IONOS_TOKEN"
ionosctl token parse --token "$IONOS_TOKEN" --privileges
# listar data centers visíveis para este token
curl -s -H "Authorization: Bearer $IONOS_TOKEN" "https://api.ionos.com/cloudapi/v6/datacenters?depth=1" | jq -r '.items[].properties.name'
# listar e revogar tokens
ionosctl token list
ionosctl token delete --token-id "$TOKEN_ID"
ionosctl token delete --expired
ionosctl token delete --current

Comentários
0Comece a conversa.
Seja a primeira pessoa a comentar este conteúdo.