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

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