前回の記事では、PingOne for Workforce(以下、単にPingOneと表記)の管理者を管理する方法について紹介しました。管理者の構成ができたところで、今回はSAMLを使ってアプリケーションと連携するまでの方法について紹介します。
Administrators環境とは別に作成された環境を使って行います。
ユーザーとグループの作成
まずは、アプリケーションにサインインするユーザーと、そのユーザーを所属させるグループを作成します。
ユーザーの作成
左メニューの”Directory”から、”Users”を開きます。開いたページの上の方にある、”Users”の右にある “+”ボタンを押します。
作成するユーザーの情報を入れていきます。
最低限必要なのは、Usernameだけなのですが、一通り値を埋めていきます。
- Given Name: 氏名の名
- Family Name: 氏名の氏
- Username: ユーザー名。メールアドレスである必要はない。
- Email: メールアドレス
- Require Email to be Verified: チェックすると、ユーザーを作成したあと、メールアドレスが有効であるかの確認を行うプロセスが実施されます。従業員のユーザーで、メールアドレスが確実に存在していることがわかっている場合は、チェックしないで問題ありません。
- Population: 複数のPopulationがある場合は選択する
- 今回はDefaultしかないので、そのまま
- Authoritative Identity Provider: この環境に、他の認証プロバイダーが登録されている場合は、どれを使って認証するのかを選択できる
- 今回はPingOneしかないので、そのまま。
- Password: フィールドの下にある”Generate Password”をクリックすると、自動生成される。PingOneはパスワードを登録せずにユーザーを作成することもできる。
必要事項を入力した後、”Save”をクリックと作成される。
ユーザーが利用できる属性は、これだけではない。Directory -> User Attributesを参照のこと。
グループの作成
左メニューの”Directory” -> “Groups”を開き、”+”ボタンをクリックします。
- Group Name: 任意のグループ名
- Description: 任意の説明文
- Population: このグループが所属するPopulation。
- 今回は、ユーザーが所属するPopulationがDefaultなので、同じDefault Populationを指定します。
“Save”ボタンをクリックして作成します。
グループができたら、ユーザーを追加します。”Users”タブを開いて、”Add Individually”ボタンをクリックします。
先ほど作成したユーザーにチェックを入れ、”Save”ボタンをクリックします。
ユーザーとグループの作成は以上です。
認証ポリシーの変更
PingOneのデフォルトでは認証ポリシーの設定が不十分なので、適切な形に変更します。
今回はPingOneを使うための一連の流れを説明することが目的なので、必要最低限のポリシーの設定とします。
実際に運用を行う際には、パスワードレス認証など、より高度な設定を推奨します。高度な設定を行うための、PingOne DaVinciの構成については、今後別の記事で紹介したいと思います。
デフォルトポリシーの変更
初期状態では、パスワード認証のみのポリシーがデフォルト設定になっています。さすがにパスワードのみというのは心許ないので、MFAを使うポリシーをデフォルトに変更します。
左メニューの、”Authentication” -> “Authentication”を開くと、認証ポリシーの一覧が表示されます。
“Multi_Factor”と書いてある行の右のアイコンをクリックすると、行が展開して詳細が表示されます。
さらに、右の鉛筆のアイコンをクリックすると、このポリシーを編集する画面になる。
ちょっとわかりづらいですが、左上にある”Make Default”をクリックすると、確認のダイアログが表示されます。”Save”ボタンをクリックすると、このポリシーがデフォルトになります。
MFAポリシーのアップデート
2025年3月時点では、初期状態のMFAポリシーは、FIDO BiometricsとSecurity Keyとなっているのですが、これらは非推奨となり、FIDO2を利用するようにポリシーのアップデートを行います。
左メニューから、”Authentication” -> “MFA”を開きます。
アップデートが必要な場合は、アップデートが必要であるという案内文と、”Update”ボタンが表示されています。もしこの表示がないのであれば、アップデートは不要なので、この後の手順は飛ばします。
“Update”ボタンが表示されている場合は、”Update”ボタンをクリックします。
ダイアログが表示されます。現在は、”Default MFA Policy”のみ存在している状態です。今回は特に設定を変更せず、”I understand”にチェックを入れて、”Save”ボタンをクリックします。
認証設定は以上です。
アプリケーションの作成と設定
テストSPのメタデータの取得
今回は、テスト用のSAML SP https://sptest.iamshowcase.com/ を使います。
上のメニューの “Instructions” -> “IDP initiated SSO” を開きます。
“DOWNLOAD METADATA”ボタンを押すと、XMLファイルが開くので、保存します。
PingOneのアプリケーションの追加と設定
PingOne管理コンソールに戻り、左メニューの”Applications” -> “Application”を開き、”+”ボタンを押します。
作成するアプリケーションの設定をしていきます。
- Application Name: 任意のアプリ名を入力します。
- Application Type: 今回は、SAML Applicationを選択します。
入力できたら、”Configure”ボタンをクリックします。
“Import Metadata”が選択された状態で、”Select a file”をクリックすると、ファイル選択ダイアログが表示されるので、先ほどダウンロードしたメタデータファイルをアップロードします。
成功すると、メタデータの内容として、ACS URLsと、Entity IDが表示されるので、”Save”をクリックします。
アプリケーションが作成できたら、”Access”タブを開きます。下の方に、先ほど作成したグループが表示されているので、チェックを入れて”Save”ボタンをクリックします。
PingOneでは、アプリケーションにユーザーを直接アサインできません。必ずグループをアサインする必要があります。
最後に、アプリケーション一覧から、アプリケーションの右にあるスイッチをクリックして、アプリケーションを有効化します。このスイッチがオンにならないと、このアプリケーションを使うことはできません。
以上で、設定は完了です。
アプリケーションにSSOする
では、これから設定したアプリケーションにSSOします。まず、エンドユーザーのアカウントで、アプリケーションポータルにアクセスしてみます。
アプリケーションポータルにアクセスする
まず、アプリケーションポータルのURLを取得します。PingOne管理コンソールの左メニューから、”Settings” -> “Environment Properties”を”開きます。
下の方に、URLsとして、”Application Portal Url”というのがあるので、このURLをコピーして、アクセスします。
サインインフォームが表示されます。作成したアカウントのユーザー名とパスワードを入力して、”Sign On”ボタンをクリックします。
初回のサインインになるので、パスワードの更新が必要です。今のパスワードと、新しいパスワードを入力して、”Submit”ボタンをクリックします。
パスワードが更新できたら、改めてサインインフォームが表示されるので、新しいパスワードを使ってサインインします。
サインインできると、MFAのためのPingIDのセットアップが要求されます。スマートフォンのPingIDアプリケーションをインストールして、表示されているQRコードを読み込みます。
PingIDアプリでQRコードの読み込みが成功すると、早速認証リクエストが要求されます。PingIDアプリで、認証要求を確認し、応答します。
問題なければ、アプリケーションポータルへのサインインが成功します。
“すべてのアプリケーション”に、作成したアプリケーションが表示されます。このアプリにサインインするには、アイコンをクリックします。
現在の設定では、改めてPingIDの認証が要求されるので応答します。
認証が成功すると、”Hello ‘User ID'”と表示されます。
SAML Subjectのデフォルトは、自動生成されるUUID形式のUser IDとなっているので、このような表示になっています。連携する属性をカスタマイズすることで、別のsubjectを使うことも可能です。
以上です。おつかれさまでした。
まとめ
今回は、PingOneでユーザーの作成から、SAMLアプリケーションへのSSOまでの流れを紹介しました。いくつか、初回だけ行う設定が含まれているので、やや煩雑になっていますが、他のIDaaSと比較して難しいところは無いと思います。





