SaaS

PingOne for Workforceでユーザー作成からアプリとSAML連携までやってみる

Ping Identity Logo

前回の記事では、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と比較して難しいところは無いと思います。

Isobe Kazuhiko

Web業界で上から下まで色々なことを経験してきて、今は、Identityに関することを中心にやってます。