Criar assinaturas

Nesta página, mostramos como usar o método do Google Cloud signBlob para criar uma assinatura de um documento de política ou string a ser assinado. As assinaturas são usadas como credenciais em determinadas solicitações, como URLs assinados. Este guia usa chaves RSA para criar assinaturas.

Antes de começar

  1. Enable the Service Account Credentials API.

    Enable the API

  2. Você precisa ter a permissão iam.serviceAccounts.signBlob para a conta de serviço usada neste guia. Essa permissão iam.serviceAccounts.signBlob está incluída no papel roles/iam.serviceAccountTokenCreator.

  3. A conta de serviço usada neste guia precisa ter permissão para executar a solicitação codificada na assinatura. Por exemplo, se a assinatura for usada para ler dados de objetos de um bucket, a conta de serviço precisará ter permissão para ler esses dados.

Criar uma assinatura

  1. Ter a gcloud CLI instalada e inicializadapara gerar um token de acesso para o cabeçalho Authorization.

    Como alternativa, é possível criar um token de acesso usando o OAuth 2.0 Playground e incluí-lo no cabeçalho Authorization.

  2. Crie um arquivo JSON com as informações a seguir:

    {
      "payload": "REQUEST_INFORMATION"
    }

    Em que:

  3. Use cURL para chamar a API IAM com uma solicitação signBlob:

    curl -X POST --data-binary @JSON_FILE_NAME \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      "https://iamcredentials.googleapis.com/v1/projects/-/serviceAccounts/SERVICE_ACCOUNT_EMAIL:signBlob"

    Em que:

    • JSON_FILE_NAME é o nome do arquivo criado na etapa 2.

    • SERVICE_ACCOUNT_EMAIL é o endereço de e-mail da conta de serviço que você quer usar para criar a assinatura. Por exemplo, service-7550275089395@my-pet-project.iam.gserviceaccount.com.

Se for bem-sucedida, a assinatura será retornada no campo signedBlob na resposta.

A seguir