O Managed Service for Grafana oferece suporte ao protocolo OAuth 2.0 para autenticação de usuários e autorização de aplicações. É possível configure aplicações de terceiros para fazer logon no Grafana por meio de OAuth. Este tópico utiliza um sistema da Alibaba Cloud como exemplo.
Contexto
OAuth (Open Authorization) é um protocolo aberto que fornece autorização segura para aplicações web, móveis e desktop. As aplicações autorizadas acessam informações protegidas sem exigir credenciais do usuário. Para mais informações, consulte a documentação oficial do OAuth.
Após a autorização, seus sistemas autogerenciados podem acessar informações em um workspace gerenciado do Grafana. Este tópico utiliza um sistema da Alibaba Cloud como exemplo para demonstrar o logon baseado em OAuth em um workspace gerenciado do Grafana. Para autorizar contas de outros product, consulte a documentação oficial do Grafana.
Como funciona
O procedimento a seguir utiliza um sistema da Alibaba Cloud para simular o sistema de autorização mostrado no diagrama. As configurações servem apenas como referência. A configuração real do seu sistema deve estar em conformidade com o padrão OAuth 2.0.
Etapa 1: crie uma aplicação
Faça logon no console do RAM com sua conta da Alibaba Cloud.
No painel de navegação à esquerda, escolha .
Na aba Enterprise Applications, clique em Create Application.
-
No painel Create Application, configure os parâmetros da aplicação.
insira um Application Name e um Display name.
-
selecione um Application Type com base nas descrições a seguir.
Tipo de aplicação
Descrição
WebApp
Aplicação baseada em web executada em um navegador.
NativeApp
Aplicação nativa executada em um sistema operacional desktop ou móvel.
ServerApp
Aplicação que acessa os serviços da Alibaba Cloud diretamente, sem exigir logon do usuário. Esse tipo de aplicação atualmente oferece suporte apenas a aplicações que utilizam o protocolo SCIM para sincronização de usuários.
-
defina o Access Token Validity Period.
O período de validade pode variar de 900 segundos (15 minutos) a 10.800 segundos (3 horas). O valor padrão é 3.600 segundos.
-
Para os tipos WebApp e NativeApp, configure o Refresh Token Validity Period e a Callback URL.
O período de validade do refresh token pode variar de 7.200 segundos (2 horas) a 31.536.000 segundos (1 ano). O valor padrão é 2.592.000 segundos.
A URL de callback corresponde ao endpoint do workspace do Grafana seguido do sufixo
/login/generic_oauth. Por exemplo:http://[Grafana-endpoint:port]/login/generic_oauth. O endpoint e a porta do workspace do Grafana estão disponíveis na página Workspace Information. Para mais informações, consulte Create a Grafana workspace.
clique em Save.
Etapa 2: Adicionar um escopo
-
Na aba Enterprise Applications, clique em no nome da sua aplicação.
NotaNa página de detalhes da aplicação, o ID da aplicação está na seção Basic Information. Esse ID é necessário na Etapa 4.
Na aba Application OAuth Scopes, clique em Add OAuth Scopes.
No painel Add OAuth Scopes, selecione o escopo profile.
clique em OK.
Etapa 3: crie um segredo
Na página de detalhes da aplicação, clique em na aba App Secrets e, em seguida, clique em Create Secret.
-
Na caixa de diálogo Create App Secret, visualize e copie (Copy) o segredo da aplicação e clique em close.
ImportanteO segredo da aplicação fica visível apenas no momento da criação e não pode ser recuperado posteriormente. salve-o em um local seguro.
É possível criar no máximo dois segredos de aplicação por aplicação.
Etapa 4: modifique os parâmetros do workspace
Faça logon no console do Managed Service for Grafana. No painel de navegação à esquerda, clique em Workspace Management.
Na página Workspace Management, clique em no ID do workspace que deseja gerencie.
No painel de navegação à esquerda, clique em Parameter Settings.
Na lista de parâmetros à esquerda, selecione auth.generic_oauth e clique em Modify Parameters.
-
Na coluna Runtime Parameters, modifique a configuração conforme o bloco de código a seguir e clique em Save and Apply.
name = Alibaba enabled = true allow_sign_up = true client_id = <application_id> // You can find the application ID on the Basic Information page of the application in the RAM console. client_secret = <application_secret> // The application secret created in Step 3. scopes = openid profile auth_url = https://signin.alibabacloud.com/oauth2/v1/auth token_url = https://oauth.aliyun.com/v1/token api_url = https://oauth.aliyun.com/v1/userinfo email_attribute_path=login_name Na lista de parâmetros à esquerda, selecione server e clique em Modify Parameters.
-
Na coluna Runtime Parameters, modifique a configuração conforme o bloco de código a seguir e clique em Save and Apply.
root_url = http://[Grafana-endpoint:port]NotaO endpoint e a porta do workspace do Grafana estão disponíveis na página Workspace Information.