CAS OmniAuth プロバイダ
CASのOmniAuthプロバイダを有効にするには、CASインスタンスにアプリケーションを登録する必要があります。 これには、GitLabがCASに提供するサービスURLが必要です。https://gitlab.example.com:443/users/auth/cas3/callback?url
のようなものです。 デフォルトでは、SLOの処理が有効になっているので、バックチャネルログアウトのためだけにCASを設定する必要があります。
-
GitLab サーバーで設定ファイルを開きます。
オムニバス・パッケージ用:
sudo editor /etc/gitlab/gitlab.rb
ソースからのインストールの場合:
cd /home/git/gitlab sudo -u git -H editor config/gitlab.yml
-
初期設定についてはOmniAuth の初期設定を参照してください。
-
プロバイダの設定を追加します:
オムニバス・パッケージ用:
gitlab_rails['omniauth_providers'] = [ { "name"=> "cas3", "label"=> "cas", "args"=> { "url"=> 'CAS_SERVER', "login_url"=> '/CAS_PATH/login', "service_validate_url"=> '/CAS_PATH/p3/serviceValidate', "logout_url"=> '/CAS_PATH/logout' } } ]
ソースからのインストールの場合:
- { name: 'cas3', label: 'cas', args: { url: 'CAS_SERVER', login_url: '/CAS_PATH/login', service_validate_url: '/CAS_PATH/p3/serviceValidate', logout_url: '/CAS_PATH/logout'} }
-
CAS_PATH’をCASインスタンスのルート(例:
cas
)に変更します。 -
CASインスタンスがデフォルトのTGCライフタイムを使用しない場合は、
cas3.session_duration
、少なくとも現在のTGC最大ライフタイムに更新します。CASの設定に関係なくSLOを明示的に無効にするには、これを0に設定します。 -
設定ファイルを保存します。
-
GitLabをOmnibus経由またはソースからインストールした場合は、変更を有効にするためにGitLabを再設定または再起動します。
サインインページのサインインフォームにCASタブがあるはずです。