그라파나

GitHub OAuth2 인증

구일칠구 2022. 7. 14. 23:51

GitHub OAuth2 인증

GitHub OAuth2를 활성화하려면 GitHub에 애플리케이션을 등록해야 합니다. GitHub는 사용할 클라이언트 ID와 비밀 키를 생성합니다.

GitHub OAuth 애플리케이션 구성

GitHub OAuth 애플리케이션을 만들어야 합니다(GitHub 설정 페이지에서 찾을 수 있음). 애플리케이션을 생성할 때 콜백 URL을 지정해야 합니다. 이것을 콜백으로 지정하십시오.

http://<my_grafana_server_name_or_ip>:<grafana_server_port>/grafana/login/github
  

이 콜백 URL은 브라우저에서 Grafana에 액세스하기 위해 사용하는 전체 HTTP 주소와 일치해야 하지만 접미사 경로는 /login/github. GitHub OAuth 애플리케이션이 생성되면 클라이언트 ID와 클라이언트 암호를 받게 됩니다. Grafana 구성 파일에서 이를 지정하십시오. 예를 들어:

Grafana에서 GitHub 활성화

[auth.github]
  enabled = true
  allow_sign_up = true
  client_id = YOUR_GITHUB_APP_CLIENT_ID
  client_secret = YOUR_GITHUB_APP_CLIENT_SECRET
  scopes = user:email,read:org
  auth_url = https://github.com/login/oauth/authorize
  token_url = https://github.com/login/oauth/access_token
  api_url = https://api.github.com/user
  team_ids =
  allowed_organizations =
  

콜백 URL이 정확하려면 의 root_url옵션 을 설정해야 할 수도 있습니다 . [server]예를 들어 프록시 뒤에서 Grafana를 제공하는 경우.

Grafana 백엔드를 다시 시작하십시오. 이제 로그인 페이지에 GitHub 로그인 버튼이 표시되어야 합니다. 이제 GitHub 계정으로 로그인하거나 가입할 수 있습니다.

allow_sign_up옵션을 로 설정하여 사용자가 GitHub 인증을 통해 가입하도록 허용할 수 있습니다 true. 이 옵션을 로 설정하면 trueGitHub 인증을 통해 성공적으로 인증하는 모든 사용자가 자동으로 등록됩니다.

팀 아이디

GitHub에서 주어진 팀 중 하나 이상에 대해 활성 팀 멤버십이 필요합니다. 인증된 사용자가 팀 중 하나 이상의 구성원이 아닌 경우 Grafana 인스턴스에 등록하거나 인증할 수 없습니다. 예를 들어:

[auth.github]
  enabled = true
  client_id = YOUR_GITHUB_APP_CLIENT_ID
  client_secret = YOUR_GITHUB_APP_CLIENT_SECRET
  scopes = user:email,read:org
  team_ids = 150,300
  auth_url = https://github.com/login/oauth/authorize
  token_url = https://github.com/login/oauth/access_token
  api_url = https://api.github.com/user
  allow_sign_up = true
  

allowed_organizations

GitHub에서 지정된 조직 중 하나 이상에 대해 활성 조직 멤버십이 필요합니다. 인증된 사용자가 조직 중 하나 이상의 구성원이 아닌 경우 Grafana 인스턴스에 등록하거나 인증할 수 없습니다. 예를 들어

[auth.github]
  enabled = true
  client_id = YOUR_GITHUB_APP_CLIENT_ID
  client_secret = YOUR_GITHUB_APP_CLIENT_SECRET
  scopes = user:email,read:org
  auth_url = https://github.com/login/oauth/authorize
  token_url = https://github.com/login/oauth/access_token
  api_url = https://api.github.com/user
  allow_sign_up = true
  # space-delimited organization names
  allowed_organizations = github google
  

팀 동기화(Enterprise만 해당)

Grafana Enterprise v6.3 이상에서만 사용 가능

Team Sync를 사용하면 GitHub 조직 팀을 Grafana의 팀에 매핑하여 사용자가 올바른 팀에 자동으로 추가되도록 할 수 있습니다.

GitHub 팀은 두 가지 방법으로 참조할 수 있습니다.

  • https://github.com/orgs//teams/
  • @<org>/<slug>

'그라파나' 카테고리의 다른 글

Okta OAuth2 인증  (0) 2022.07.15
GitLab OAuth2 인증  (0) 2022.07.15
Azure AD OAuth2 인증  (0) 2022.07.14
일반 OAuth 인증  (0) 2022.07.13
LDAP 인증  (0) 2022.07.13