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, không cần mã TOTP, phù hợp cho script, CI và AI Agent.

Tạo credential​

  1. Trong console Vietnix Enterprise Cloud, mở Settings → API credentials.

    Trang API credentials

  2. Bấm Create.

    Tạo API credential

  3. Nhập Name, chọn Project và đặt Expiration date. Thời hạn tối đa là 1 năm.

    Nhập tên và ngày hết hạn

    Đã chọn ngày hết hạn

  4. Bấm Create.

  5. Sao chép ID và API secret key trong hộp thoại xác nhận. Có thể bấm Copy token information để sao chép cả hai. Secret chỉ hiện một lần.

    Sao chép ID và API secret key

  6. Kiểm tra credential ở trạng thái Active trong danh sách. Ngày hết hạn hiển thị bên cạnh.

    Danh sách credential đang active

Các trường của credential​

  • Name: tên gợi nhớ, ví dụ ai-agent hoặc ci-runner.
  • ID: định danh công khai. Dùng làm OS_APPLICATION_CREDENTIAL_ID.
  • API secret key: chỉ hiện một lần khi tạo. Dùng làm OS_APPLICATION_CREDENTIAL_SECRET.
  • Expiration: tối đa 1 năm. Đặt thời hạn ngắn hơn cho quyền truy cập tạm thời.
  • Project: credential chỉ hoạt động trong project này.
cảnh báo

API secret key chỉ hiện một lần. Sao chép trước khi đóng hộp thoại. 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.

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.

Dùng với AI Agent​

Dùng cùng ID và secret trong cấu hình MCP server. Xem AI Agent.