Chuyển tới nội dung chính

API credentials

API và OpenStack CLI dùng chung một application credential của Keystone. Credential gắn với một project và không cần mã TOTP, phù hợp cho script và CI.

Tạo ở đâu​

Tạo application credential trong console Vietnix Cloud, ở phần cài đặt tài khoản. Mỗi credential có:

  • ID: định danh công khai hiển thị cạnh tên credential.
  • Secret: chỉ hiện một lần khi tạo. Lưu trong secret manager.
  • Expiration: tuỳ chọn; nên đặt cho quyền truy cập tạm thời.
  • Project: credential chỉ hoạt động trong project này.
ghi chú

Hướng dẫn từng bước trên console và ảnh chụp sẽ được bổ sung tại đây.

Dùng với API​

Đổi ID và secret lấy token Keystone:

curl -ksD - -o /dev/null -X POST \
-H 'Content-Type: application/json' \
-d '{
"auth": {
"identity": {
"methods": ["application_credential"],
"application_credential": {
"id": "<credential-id>",
"secret": "<credential-secret>"
}
}
}
}' \
https://api.vietnix.cloud/v3/auth/tokens

Token nằm trong header X-Subject-Token. Xem Xác thực để biết luồng đầy đủ.

Dùng với CLI​

export OS_AUTH_TYPE=v3applicationcredential
export OS_AUTH_URL=https://api.vietnix.cloud/v3
export OS_IDENTITY_API_VERSION=3
export OS_APPLICATION_CREDENTIAL_ID="<credential-id>"
export OS_APPLICATION_CREDENTIAL_SECRET="<credential-secret>"

openstack token issue

Credential đã có scope, nên không cần OS_PROJECT_NAME.

cảnh báo

Secret chỉ hiện một lần. Không commit, không dán vào ticket, không đặt trong CI variable mà fork có thể thấy. Rotate credential khi mất laptop hoặc runner.