commit dde228c2213615b3de9a6b2a14b3cf5abb8856e8 Author: 정훈 변 Date: Thu May 9 16:08:56 2024 +0900 최초 작성 diff --git a/README.md b/README.md new file mode 100644 index 0000000..3f2101b --- /dev/null +++ b/README.md @@ -0,0 +1,35 @@ +# Gitlab OIDC 연동 (authentik) +Gitlab에 OIDC 연동을 위해 keycloak를 사용 하였으나, 이번에 authentik으로 변경하면서 설정한 내용 기록
+사전에 미리 Gitlab과 Authentik가 설치 되어 있어 있고, 공급자와 애플리케이션 추가가 완료 되어 있는 상태에서 진행 + +## Gitlab 설정 +`gitlab.rb` 파일에 아래의 내용 설정 + +```yaml +gitlab_rails['omniauth_enabled'] = true +gitlab_rails['omniauth_allow_single_sign_on'] = ['openid_connect'] +gitlab_rails['omniauth_block_auto_created_users'] = true # 활성화 시켜주어야 oidc 로그인을 할 경우 계정 자동 생성 +gitlab_rails['omniauth_auto_link_user'] = ['openid_connect'] +gitlab_rails['omniauth_providers'] = [ + { + name: "openid_connect", # 변경 하지 않음 + label: "Authentik Login", # 로그인 버튼의 텍스트 + icon: "https://static-00.iconduck.com/assets.00/authentik-orange-icon-512x391-4kzut6y1.png", # 로그인 버튼에 들어갈 아이콘 + args: { + name: "openid_connect", + scope: ["openid","profile","email"], + response_type: "code", + issuer: "https://auth.jhcloud.kr/application/o/gitlab/", + discovery: true, + client_auth_method: "query", # default가 query 이며, basic , jwt_bearer , mtls 가 있음 + send_scope_to_token_endpoint: "false", + pkce: true, + client_options: { + identifier: "", # 클라이언트 ID + secret: "", # 클라이언트 Secret + redirect_uri: "https://lab.jhcloud.kr/users/auth/openid_connect/callback" + } + } + } +] +``` \ No newline at end of file