¿Cómo puedo obtener un token de acceso de IAM par IBM® Cloud Logs Routing

Debes obtener un token de acceso de IBM Cloud® Identity and Access Management (IAM) para autenticar tus solicitudes al servicio IBM® Cloud Logs Routing.

¿Cómo puedo obtener un token de acceso con la CLI?

Puede utilizar la IBM Cloud CLI para generar rápidamente su token de accesoValor que utiliza el cliente para obtener acceso a los recursos protegidos en nombre del usuario, en lugar de utilizar las credenciales del proveedor de servicio del usuario. personal de Cloud IAM.

  1. Inicia sesión en IBM Cloud con la IBM Cloud CLI.

    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 mostrado en la salida de la CLI para generar un código de acceso puntual.

  2. Ejecute el siguiente comando para recuperar su IBM Cloud token de acceso IAM y expórtelo como variable de entorno ejecutando el siguiente comando:

    export IAM_TOKEN=`ibmcloud iam oauth-tokens --output json | jq -r '.iam_token'`
    

¿Cómo puedo obtener un token de acceso con la API?

También puede obtener su token de acceso mediante programación creando primero una clave API de ID de servicio para su aplicación y, a continuación, canjeando su clave API por un token IAM de IBM Cloud.

  1. Cree una clave API de ID de servicio.

  2. Llama a la API de IAM Identity Services para recuperar tu token 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
    

    En la solicitud, sustituya <API_KEY> por la clave de API que ha creado en el paso anterior. 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"
    }
    

Las señales de acceso son válidas durante 1 hora, pero puede volver a generarlas cuando las necesite.