Recuperación de señales de acceso de IAM
Para utilizar la API de Activity Tracking, debe utilizar una señal de acceso de IBM Cloud® Identity and Access Management (IAM). Cada señal sólo es válida durante una hora y, una vez caducada una señal, debe solicitar una nueva si desea continuar utilizando la API.
Recuperación de una señal de acceso para la sesión actual utilizando la CLI de IBM Cloud
Puede utilizar la CLI de IBM Cloud para generar la señal de acceso de IAM.
Lleve a cabo los pasos siguientes para generar una señal de acceso para la sesión actual:
-
Inicie una sesión en IBM Cloud con la CLI de IBM Cloud.
ibmcloud login
Si el inicio de sesión falla, ejecute el mandato
ibmcloud login --sso
para volver a intentarlo. Se requiere el parámetro--sso
para iniciar sesión con un ID federado. Si se utiliza esta opción, vaya al enlace que se muestra en la salida de la CLI para generar una contraseña de uso único. -
Ejecute el mandato siguiente para recuperar la señal de acceso de Cloud IAM.
ibmcloud iam oauth-tokens | grep IAM | cut -d \: -f 2 | sed 's/^ *//'
El siguiente ejemplo trucado muestra una señal IAM recuperada.
IAM token: Bearer eyJraWQiOiIyM...
Recuperación de una señal de acceso utilizando una clave de API y la CLI de la IBM Cloud
También puede recuperar la señal de acceso mediante programación creando una clave de API de ID de servicio para la aplicación e intercambiándola seguidamente por una señal de IBM Cloud IAM.
-
Inicie una sesión en IBM Cloud con la CLI de IBM Cloud.
ibmcloud login -a cloud.ibm.com [--apikey KEY | @KEY_FILE]
Donde
KEY | @KEY_FILE
es la clave de API que desea utilizar para obtener la señal de acceso. -
Ejecute el mandato siguiente para obtener una señal de acceso de IAM.
ibmcloud iam oauth-tokens | grep IAM | cut -d \: -f 2 | sed 's/^ *//'
El siguiente ejemplo trucado muestra una señal IAM recuperada.
IAM token: Bearer eyJraWQiOiIyM...
Recuperación de una señal de acceso utilizando una clave de API en una solicitud de cURL
Ejecute el siguiente mandato cURL para llamar a la API de IAM Identity Services para recuperar la señal de acceso:
curl -X POST \
'https://iam.cloud.ibm.com/identity/token' \
-H 'content-type: application/x-www-form-urlencoded' \
-H 'accept: application/json' \
-d 'grant_type=urn%3Aibm%3Aparams%3Aoauth%3Agrant-type%3Aapikey&apikey=<API_KEY>' > token.json
Sustituya <API_KEY>
por la clave de API.
En el siguiente ejemplo truncado se muestra el contenido del archivo token.json
:
{
"access_token": "b3VyIGZhdGhlc...",
"expiration": 1512161390,
"expires_in": 3600,
"refresh_token": "dGhpcyBjb250a...",
"token_type": "Bearer"
}
Utilice el valor access_token
completo, con el tipo de señal Bearer como prefijo.