Token Authentication
Scenarios
To call APIs using a token, add the token to the X-Auth-Token header in API requests.
 
   You can use either of the following authentication methods to call APIs:
- Token authentication: Requests are authenticated using a token.
 - AK/SK authentication: Requests are encrypted using an access key ID (AK) and a secret access key (SK).
 
Calling an API Through Token Authentication
- Obtain a token. For details, see "chapter "Obtaining a User Token"" in the Identity and Access Management API Reference. After the request is processed, the value of X-Subject-Token in the message header is the token value.
    
The following figures show how to obtain a token using an API testing tool.
Figure 1 Example request
    Figure 2 Obtaining the X-Subject-Token response header
     - Call a service API and add the X-Auth-Token request header to specify the token obtained in 1.
 
Example
This section describes the basic procedure for using an API.
- Obtain the required information.
 - On the management console, hover the mouse pointer over the username in the upper right corner, choose My Credentials from the drop-down list, and then view the project ID on the displayed page.
 - Call the token authentication API to obtain a token, and set an environment variable to pass the token. This token will be used for authentication of other APIs. For details, see chapter "Obtaining a User Token".
    
- Run the following commands to obtain a token:
      
curl -X POST https://{iam_endpoint}/v3/auth/tokens -H 'content-type: application/json' -d '{ "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "{user_name}", "domain": { "name": "{user_name}" }, "password": "{password}" } } }, "scope": { "project": { "id": "{project_id}" } } } }' -vkModify the following parameters by referring to Identity and Access Management API Reference:
- {iam_endpoint}: Replace this parameter with the IAM endpoint.
 - {project_id}: Replace this parameter with the project ID.
 - {user_name} and {password}: Replace these two parameters respectively with the username and password of the IAM server.
 
The value of the X-Subject-Token response header is the token.
X-Subject-Token:MIIDkgYJKoZIhvcNAQcCoIIDgzCCAxxxxxx38CAQExDTALBglghkgBZQMEAgEwg
 - Run the following command to set an environment variable for passing the token:
      
export Token={X-Subject-Token}
X-Subject-Token is the token obtained in 3.a. Example:
export Token=MIIDkgYJKoZIhvcNAQcCoIIDgzCCAxxxxxx38CAQExDTALBglghkgBZQMEAgEwg
 
 - Run the following commands to obtain a token:
      
 - Call an API. Configure required parameters, and obtain the domain name, request method, and URL by referring to Preparation.
    
curl -X Request_method Domain name+URL -H "x-auth-token: $Token" -vk
 
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.