Grafana
Grafana에서 Casdoor를 이용한 인증 사용하기
Grafana는 OAuth를 통한 인증을 지원합니다. 따라서, 사용자가 Casdoor를 이용하여 Grafana에 로그인하는 것은 매우 쉽습니다. 이를 달성하기 위해 몇 단계의 간단한 설정만 필요합니다.
Grafana에서 Casdoor를 이용한 인증을 사용하는 방법에 대한 튜토리얼입니다. 진행하기 전에, Grafana가 설치되어 있고 실행 중인지 확인하십시오.
단계 1: Casdoor에서 Grafana용 앱 생성하기
Casdoor에서 앱을 생성하는 예시입니다:
다음 단계를 위해 클라이언트 비밀번호와 클라이언트 ID를 복사해 주세요.
Grafana의 콜백 URL을 추가해 주세요. 기본적으로, Grafana의 OAuth 콜백은 /login/generic_oauth
입니다. 따라서 이 URL을 올바르게 연결해 주세요.
단계 2: Grafana의 설정 수정하기
기본적으로, OAuth 설정 파일은 Grafana의 작업 디렉토리에 있는 conf/defaults.ini
에 위치해 있습니다.
[auth.generic_oauth]
섹션을 찾아 다음 필드를 수정해 주세요:
[auth.generic_oauth]
name = Casdoor
icon = signin
enabled = true
allow_sign_up = true
client_id = <client ID from previous step>
client_secret = <client secret from previous step>
auth_url = <Casdoor endpoint>/login/oauth/authorize
token_url = <Casdoor endpoint>/api/login/oauth/access_token
HTTPS에 대하여
Casdoor에 대해 HTTPS를 활성화하고 싶지 않거나, HTTPS를 활성화하지 않고 Grafana를 배포하는 경우, tls_skip_verify_insecure = true
도 설정해 주세요.
Casdoor로 로그인 한 후의 redirectURI에 대하여
Grafana에서 Casdoor로 로그인 한 후 redirect URI가 올바르지 않다면, root_url을 설정하고 싶을 수 있습니다.
[server]
http_port = 3000
# The public-facing domain name used to access Grafana from a browser
domain = <your IP here>
# The full public-facing URL
root_url = %(protocol)s://%(domain)s:%(http_port)s/
관련 링크:
역할 매핑에 대하여
사용자의 역할을 Grafana에 매핑하기 위해 role_attribute_path
를 설정하고 싶을 수 있습니다. role_attribute_path를 참조하세요.
[auth.generic_oauth]
role_attribute_path = contains(roles[*].name, 'admin') && 'Admin' || contains(roles[*].name, 'editor') && 'Editor' || 'Viewer'
role_attribute_strict = true
allow_assign_grafana_admin = true
role_attribute_path
후의 JMESPath 표현식은 여기에서 매우 중요합니다. Grafana 문서를 참조해 주세요.
단계 3: 작동하는지 확인하기
Grafana를 종료하고 다시 시작하세요.
로그인 페이지로 이동하세요. 다음과 같은 것을 볼 수 있어야 합니다: