OneLoginでPKI証明書による認証方式を試してみた

おはようございます、加藤です。今回はOneLoginで使えるPKI証明書による認証方式を試してました!

事前準備

下記のブログを参考にユーザーがOneLogin経由でAWSにログインできる設定を行いました。

ログイン先のサービスはAWS以外でも問題ありません。

ポリシーの作成

Admin権限を持つユーザーでOneLoginにログインします。
SETTINGS→Policiesをクリックして、ポリシー一覧画面を開きます。

onelogin-auth_factors-pki001

NEW USER POLICYをクリックして、ユーザー用のポリシーを新規作成します。

onelogin-auth_factors-pki002

ポリシー名を設定します。私は'rkSamplePolicy-PKI'と設定しました。
入力が完了したらチェックマークをクリックして、編集を完了します。

onelogin-auth_factors-pki003

MFAをクリックして、MFA画面を開きます。
PKIに関する設定項目があるので設定し、SAVEをクリックして変更を適用します。

onelogin-auth_factors-pki004

原文 意味 設定値 備考
PKI Certificate Required PKI証明書を要求する yes
Allow self-installation 自己インストールを許可する no 管理者ではなく、ユーザー自身に証明書のインストールを行わせたい場合に使用します
Certificate expire in PKI証明書の有効期限 1 Year

ポリシーの適用

USERS→All Usersでをクリックして、ユーザー一覧画面を開きます。

onelogin-auth_factors-pki005

ユーザー一覧からポリシーを適用したいユーザーをクリックしてユーザーの管理画面を開きます。

Authenticationをクリックし、認証画面を開きます。
User Security Policyを作成した、'rkSamplePolicy-PKI'を選択し、SAVE USERをクリックして確定しあす。

onelogin-auth_factors-pki006

MORE ACTIONS→Download PKI certをクリックして証明書をダウンロードする。
拡張子が.p12のファイルがダウンロードできればOK

onelogin-auth_factors-pki007

動作確認

ポリシーを設定したユーザーでOneLoginにログインする。

すると証明書がないので、下図のようなエラー画面になります。

onelogin-auth_factors-pki008

証明書をインストールします。
今回はブラウザにFirefoxを使用しました。
Firefoxの設定画面の項目を'証明書'という単語で検索します。そして、証明書を表示をクリックします。

onelogin-auth_factors-pki009

証明書マネージャーの画面が開きます。
あなたの証明書→読み込む...をクリックすると、ファイルダイアログが開くので先ほどダウンロードした証明書を選択します。

onelogin-auth_factors-pki010

パスワード入力を求められますが、空でOKです。

onelogin-auth_factors-pki011

もう一度ログインしてみます。
証明書の確認を求められます。選択されている証明書に問題がない事を確認してOKをクリックします。

onelogin-auth_factors-pki012

無事にログインできました!

onelogin-auth_factors-pki013

証明書の入っていない端末からアクセスすると、先程と同様にログインを拒否されます。PKI証明書によってログインする端末を限定できていることが確認できました!