Partilhar via


Gerar um token de autenticação

Neste artigo, você aprenderá a gerar o token de autenticação da entidade de serviço, o token de autenticação de um usuário e o token de atualização de um usuário.

Registar a aplicação no Microsoft Entra ID

  1. Para provisionar a plataforma Azure Data Manager for Energy, você deve registrar seu aplicativo na página de registro do aplicativo do portal do Azure. Pode utilizar uma conta Microsoft ou uma conta escolar ou profissional para registar uma aplicação. Para obter etapas sobre como configurar, consulte Registrar a documentação do aplicativo.

  2. Na seção de visão geral do aplicativo, se não houver URIs de redirecionamento especificados, você poderá selecionar Adicionar uma plataforma>Web, adicionar http://localhost:8080e selecionar Salvar.

    Captura de tela que mostra a adição do URI ao aplicativo.

Parâmetros de busca

Você também pode encontrar os parâmetros depois que o aplicativo é registrado no portal do Azure.

Encontrar ID de inquilino

  1. Aceda à conta Microsoft Entra da sua organização. Você pode pesquisar por ID do Microsoft Entra na barra de pesquisa do portal do Azure.

  2. Na guia Visão geral, na seção Informações básicas, localize ID do locatário.

  3. Copie o valor e cole-o tenant-ID em um editor para ser usado mais tarde.

    Captura de ecrã que mostra a procura de ID do Microsoft Entra.

    Captura de ecrã que mostra a localização do ID do inquilino.

Encontrar ID do cliente

A client-id é o mesmo valor que você usa para registrar seu aplicativo durante o provisionamento da instância do Azure Data Manager for Energy. É muitas vezes referido como app-id.

  1. Vá para a página Visão Geral do Azure Data Manager for Energy. No painel Essentials, localize a ID do cliente.

  2. Copie o valor e cole-o client-id em um editor para ser usado mais tarde.

  3. Atualmente, uma instância do Azure Data Manager for Energy permite que uma app-id seja associada a uma instância.

    Importante

    O client-id valor passado como um valor nas chamadas da API de Direitos precisa ser o mesmo que foi usado para provisionar sua instância do Azure Data Manager for Energy.

    Captura de ecrã que mostra a localização do ID de cliente da sua aplicação registada.

Encontrar segredo do cliente

A client-secret é um valor de cadeia de caracteres que seu aplicativo pode usar no lugar de um certificado para se identificar. Às vezes é referida como uma senha de aplicativo.

  1. Aceda a Registos de aplicações.

  2. Na seção Gerenciar, selecione Certificados & segredos.

  3. Selecione Novo segredo do cliente para criar um segredo do cliente para a ID do cliente que você usou para criar sua instância do Azure Data Manager for Energy.

  4. Registre o valor do segredo para uso posterior no código do aplicativo cliente.

    O token de acesso do e client-secret tem acesso app-id do administrador de infraestrutura à instância.

    Atenção

    Não se esqueça de registrar o valor do segredo. Esse valor secreto nunca mais é exibido depois que você sai desta página para a criação de segredo do cliente.

    Captura de tela que mostra a localização do segredo do cliente.

Encontrar redirect-uri

O redirect-uri do seu aplicativo, onde o aplicativo envia e recebe as respostas de autenticação. Ele deve corresponder exatamente a um dos URIs de redirecionamento que você registrou no portal, exceto que ele deve ser codificado por URL.

  1. Aceda a Registos de aplicações.
  2. Na seção Gerenciar, selecione Autenticação.
  3. Procure o (ou URL de resposta) do redirect-uri seu aplicativo para receber respostas do Microsoft Entra ID.

Captura de tela que mostra o redirect-uri.

Encontre o adme-url para sua instância do Azure Data Manager for Energy

  1. Crie uma instância do Azure Data Manager for Energy usando o client-id gerado acima.

  2. Vá para a página Visão Geral do Azure Data Manager for Energy no portal do Azure.

  3. No painel Essentials, copie o URI.

    Captura de ecrã que mostra a localização do URI da instância do Azure Data Manager for Energy.

Localizar data-partition-id

Você tem duas maneiras de obter a lista de partições de dados em sua instância do Azure Data Manager for Energy.

  • Opção 1: Na seção Avançado da interface do usuário do Azure Data Manager for Energy, vá para o item de menu Partições de Dados.

    Captura de ecrã que mostra a localização do ID da partição de dados a partir da instância do Azure Data Manager for Energy.

  • Opção 2: No painel Essentials da página Visão Geral do Azure Data Manager for Energy, abaixo do campo Partições de Dados, selecione exibir.

    Captura de ecrã que mostra a localização do ID da partição de dados a partir da página Descrição Geral da instância do Azure Data Manager for Energy.

    Captura de ecrã que mostra a localização do ID da partição de dados a partir da página Descrição Geral da instância do Azure Data Manager for Energy com as partições de dados.

Encontrar domínio

Por padrão, o domain é dataservices.energy para todas as instâncias do Azure Data Manager for Energy.

Gerar o token de autenticação client-id

Execute o seguinte comando curl no Azure Cloud Bash depois de substituir os valores de espaço reservado pelos valores correspondentes encontrados anteriormente nas etapas anteriores. O token de acesso na resposta é o client-id token de autenticação.

Formato do pedido

curl --location --request POST 'https://login.microsoftonline.com/<tenant-id>/oauth2/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'scope=<client-id>.default' \
--data-urlencode 'client_id=<client-id>' \
--data-urlencode 'client_secret=<client-secret>' \
--data-urlencode 'resource=<client-id>'

Resposta de amostra

    {
        "token_type": "Bearer",
        "expires_in": 86399,
        "ext_expires_in": 86399,
        "access_token": "abcdefgh123456............."
    }

Gerar o token de autenticação do usuário

Gerar o token de autenticação de um usuário é um processo de duas etapas.

Obter o código de autorização

A primeira etapa para obter um token de acesso para muitos fluxos OpenID Connect (OIDC) e OAuth 2.0 é redirecionar o usuário para o ponto de extremidade da plataforma /authorize de identidade da Microsoft. O Microsoft Entra ID inicia sessão no utilizador e solicita o seu consentimento para as permissões que a sua aplicação solicita. No fluxo de concessão de código de autorização, após a obtenção do consentimento, a ID do Microsoft Entra retorna um código de autorização para seu aplicativo que ele pode resgatar no ponto de extremidade da plataforma /token de identidade da Microsoft para um token de acesso.

  1. Prepare o formato da solicitação usando os parâmetros.

    https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/authorize?client_id=<client-id>
    &response_type=code
    &redirect_uri=<redirect-uri>
    &response_mode=query
    &scope=<client-id>%2f.default&state=12345&sso_reload=true
    
  2. Depois de substituir os parâmetros, você pode colar a solicitação no URL de qualquer navegador e selecionar Enter.

  3. Entre no portal do Azure se ainda não estiver conectado.

  4. Você pode ver o "Hmmm... can't reach this page" mensagem de erro no navegador. Você pode ignorá-lo.

    Captura de tela do redirecionamento localhost.

  5. O navegador redireciona para http://localhost:8080/?code={authorization code}&state=... após a autenticação bem-sucedida.

  6. Copie a resposta da barra de URL do navegador e busque o texto entre code= e &state.

    http://localhost:8080/?code=0.BRoAv4j5cvGGr0...au78f&state=12345&session....
    
  7. Mantenha-o authorization-code à mão para uso futuro.

    Parâmetro Description
    code O código de autorização que o aplicativo solicitou. O aplicativo pode usar o código de autorização para solicitar um token de acesso para o recurso de destino. Os códigos de autorização são de curta duração. Normalmente, expiram após cerca de 10 minutos.
    state Se um parâmetro de estado for incluído na solicitação, o mesmo valor deverá aparecer na resposta. O aplicativo deve verificar se os valores de estado na solicitação e na resposta são idênticos. Essa verificação ajuda a detetar ataques CSRF contra o cliente.
    session_state Um valor exclusivo que identifica a sessão de usuário atual. Esse valor é um GUID, mas deve ser tratado como um valor opaco que é aprovado sem exame.

Aviso

Executar a URL no Postman não funcionará porque requer configuração extra para recuperação de token.

Obter um token de autenticação e um token de atualização

O segundo passo é obter o token de autenticação e o token de atualização. Seu aplicativo usa o código de autorização recebido na etapa anterior para solicitar um token de acesso enviando uma solicitação POST para o /token ponto de extremidade.

Formato do pedido

  curl -X POST -H "Content-Type: application/x-www-form-urlencoded" -d 'client_id=<client-id>
  &scope=<client-id>%2f.default openid profile offline_access
  &code=<authorization-code>
  &redirect_uri=<redirect-uri>
  &grant_type=authorization_code
  &client_secret=<client-secret>' 'https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token'

Resposta da amostra

{
  "token_type": "Bearer",
  "scope": "User.Read profile openid email",
  "expires_in": 4557,
  "access_token": "eyJ0eXAiOiJKV1QiLCJub25jZSI6IkJuUXdJd0ZFc...",
  "refresh_token": "0.ARoAv4j5cvGGr0GRqy180BHbR8lB8cvIWGtHpawGN..."
}
Parâmetro Description
token_type Indica o valor do tipo de token. O único tipo que o Microsoft Entra ID suporta é Bearer.
âmbito Uma lista separada por espaços das permissões do Microsoft Graph para as quais o token de acesso é válido.
expires_in Por quanto tempo o token de acesso é válido (em segundos).
access_token O token de acesso solicitado. Seu aplicativo pode usar esse token para chamar o Microsoft Graph.
refresh_token Um token de atualização OAuth 2.0. Seu aplicativo pode usar esse token para adquirir tokens de acesso extras depois que o token de acesso atual expirar. Os tokens de atualização são de longa duração e podem ser usados para manter o acesso aos recursos por longos períodos de tempo.

Para obter mais informações sobre como gerar um token de acesso de usuário e usar um token de atualização para gerar um novo token de acesso, consulte Gerar tokens de atualização.

OSDU® é uma marca comercial do The Open Group.

Próximos passos

Para saber mais sobre como usar o token de atualização gerado, consulte: