Recuperación de una señal de acceso

Empiece con la API de servicio de gestión de claves de Hyper Protect Crypto Services mediante la autenticación de las solicitudes en el servicio con una señal de acceso de IBM Cloud® Identity and Access Management (IAM).

Una señal de acceso es una credencial temporal que caduca al cabo de 1 hora. Una vez caducada la señal adquirida, deberá generar una nueva para seguir llamando a las API de servicio o IBM Cloud. Para mantener el acceso al servicio, vuelva a generar la señal de acceso para la clave de API con regularidad.

Recuperación de una señal de acceso con la CLI

Puede utilizar la CLI de IBM Cloud para generar de forma rápida su señal de acceso personal de Cloud IAM.

  1. 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.

  2. Seleccione la región y el grupo de recursos donde desea crear una instancia de servicio de Hyper Protect Crypto Services. Utilice el siguiente mandato para establecer la región de destino y el grupo de recursos.

    ibmcloud target -r <region_name> -g <resource_group_name>
    
  3. Ejecute el mandato siguiente para recuperar la señal de acceso de Cloud IAM.

    ibmcloud iam oauth-tokens
    

    El siguiente ejemplo trucado muestra una señal IAM recuperada.

    IAM token:  Bearer eyJraWQiOiIyM...
    

Recuperación de una señal de acceso con la API

También puede recuperar su señal mediante programación utilizando una clave de API y, a continuación, intercambiando la clave de API para una señal de IBM Cloud IAM. En función de si crea la señal de acceso para un usuario o una aplicación, utilice la clave de API de usuario de IBM Cloud o una clave de API de ID de servicio según corresponda.

  1. 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.

  2. Seleccione la región y el grupo de recursos que contienen la instancia de Hyper Protect Crypto Services suministrada con el mandato siguiente:

    ibmcloud target -r <region_name> -g <resource_group_name>
    
  3. Cree una clave de API.

    • Si desea recuperar una señal de acceso para un usuario, cree una clave de API de usuario con el mandato siguiente:

      ibmcloud iam api-key-create <API_key_name>
          [-d, --description <description>]
          [--file <API_key_file_name>]
      

      Especifique para la clave de API un nombre exclusivo con el parámetro <API_key_name>. Asegúrese de guardar la clave de API para utilizarla posteriormente utilizando el parámetro <API_key_file_name> o copiando el valor de clave de API de la respuesta del mandato.

    • Si desea recuperar una señal de acceso para una aplicación, cree una clave de API del ID de servicio realizando los pasos siguientes:

      1. Cree un ID de servicio para la aplicación con el siguiente mandato:

        ibmcloud iam service-id-create <service_ID_name>
            [-d, --description <description>]
        

        Especifique para el ID de servicio un nombre exclusivo con el parámetro <service_ID_name>.

      2. Cree una clave de API del ID de servicio con el siguiente mandato:

        ibmcloud iam service-api-key-create <API_key_name> <service_ID_name>
            [-d, --description <description>]
            [--file <API_key_file_name>]
        

        Especifique para la clave de API un nombre exclusivo con el parámetro <API_key_name> y sustituya <service_ID_name> por el alias exclusivo que ha asignado al ID de servicio en el paso anterior. Asegúrese de guardar la clave de API para utilizarla posteriormente utilizando el parámetro <API_key_file_name> o copiando el valor de clave de API de la respuesta del mandato.

  4. Asignar al usuario o al ID del servicio el acceso apropiado a la instancia de Hyper Protect Crypto Services basándose en la política de acceso.

    Para aprender cómo se correlacionan los roles de acceso de IAM con acciones de servicio de Hyper Protect Crypto Services específico, consulte Roles y permisos.

  5. Llame a la API de servicios de identidad de IAM para recuperar su 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:ibm:params:oauth:grant-type:apikey&apikey=<API_key>" > token.json
    

    En la solicitud, sustituya <API_key> por la clave de API de usuario o la clave de API de ID de servicio que ha creado en el paso anterior. En el siguiente ejemplo truncado se muestra el contenido del archivo token.json:

    {
    "access_token": "eyJraWQiOiIyM...",
    "expiration": 1512161390,
    "expires_in": 3600,
    "refresh_token": "...",
    "token_type": "Bearer"
    }
    

    Utilice el valor access_token completo, con el prefijo del tipo de señal Portador, para gestionar mediante programación las claves del servicio utilizando la API del servicio de gestión de claves de Hyper Protect Crypto Services. Para ver una solicitud de API de servicio de gestión de claves de Hyper Protect Crypto Services de ejemplo, consulte Formar la solicitud de API de servicio de gestión de claves.