
OpenID Connect認証の構成
4 タスク
45 分
上級
Pega Platform 8.6
日本語
シナリオ
Front Stageでは、オペレーターの認証にOpenID Connectを使用することを検討しています。
概念実証としてのOpenID Connectを設計して実装します。
PegaはOpenID ConnectによるSSOログインに対応しています。 Pega Platform™アプリケーションへのログインに、Gmail、Facebook、その他のOpen ID Connect IDプロバイダーを使用できます。
Gmailのログイン情報を使用してPega Platformアプリケーションにログインするには、GoogleアカウントとPega Platformアプリケーションで構成を行います。
以下の表は、チャレンジに必要なログイン情報をまとめたものです。
ロール | ユーザー名 | パスワード |
---|---|---|
Administrator | Admin@Booking | rules |
詳細なタスク
1 ソリューション詳細のレビュー
- Googleアカウントで構成を行います。
- Google API & Servicesでプロジェクトを作成します。
- OAuthの同意画面を入力します。
- ログイン情報を作成します。
- Pega Platformアプリケーションで構成を行います。
- App Studioから新しいSSOログインを構成します。
- Authentication Serviceを検証します。
2 Google API & Servicesでのプロジェクト作成
- リンクをクリックして、Google API Consoleを開きます。
- 「Credentials 」セクションで、「Create 」をクリックして、下の画像のようにプロジェクトを作成します。
- 「Project name」フィールドに、「PegaOpenIDConnectProject」と入力します。
- 「Create 」をクリックすると、新しいプロジェクトが作成されます。
- 「Configure Consent Screen」をクリックして、詳細な情報を入力します。
- 「User Type」セクションで、「External」を選択してから「Create」をクリックします。
- ここでは、Authorized Domainを入力する必要があります。 Client IDの生成とSecret Keyは必須です。
- Application Name:構成を識別するための名前を入力します。
- Support Email:Gmailアドレスを入力します。 これは自動的に表示されます。
- Scope of Google API:スコープ(Email、Profile、OpenIDなど)を定義します。
- Authentication Domain:Pega Platformアプリケーションが稼働している場所のホスト名を追加します。 Pega Cloudを使用している場合、ドメイン名は検索と使用が簡単です。 Pega VMまたはPersonal Editionを使用している場合は、Tomcatのserver.xmlファイルで、localhostで何らかのドメイン名を使用するように変更を加える必要があります。 インストラクションは、この演習のインストラクションの末尾に記載されています。 たとえば、www.pegaopenid.comは、Tomcatのserver.xmlファイルのドメインです。
- ヘッダー内の「Create Credentials > OAuth Client ID 」をクリックして、OAuthクライアントIDを構成します。
-
「Application type 」セクションで、「Web application」を選択します。
-
「Authorized redirect URIs」フィールドにパス名を入力します。 たとえば、「https://www.pegaopenid.com/prweb/PRAuth」のようにします。
-
「Create 」をクリックすると、ポップアップウィンドウが開き、 Client IDとClient secretキーが表示されます。
-
Client IDキーとClient secretキーは、Pega Platformアプリケーションでルールを構成する際に使用します。
補足: Client IDキーとClient secretキーは「Create Credentials」ページからもアクセスできます。
3 App Studioでの新しいシングルサインオン(SSO)ログインの構成
App Studioから新しいSSOログインを構成します。
- App Studioにログインします。
- 左側のナビゲーションペインで、「Users」をクリックします。
- Usersエクスプローラーで、「Single sign-on (SSO)」をクリックします。
- 右上の「New」から「Google」をクリックします。
- 新しいシングルサインオンログインを作成します。
- Name:この構成の名前を入力します。この名前はURLに付加されます。
- Import metadata:クリックしてURLを選択し、URL(例:https://accounts.google.com/.well-known/openid-configuration)を入力します。
- Client IDとClient secret:Google API & Servicesの「Create Credentials」ページの値を使用します。
- Map operator ID from claim:ユーザーの名前を入力します。
- Create operators for new users:このチェックボックスにチェックを入れ、アクセスグループを入力します。
- Configure your IDP:このURLをコピーし、「 Import metadata」フィールドに貼り付けます。
- Click Submit。
OpenID Connectを使用するSSOが作成され、Dev Studioで開いて構成や検証を行えます。
ヒント: 構成をさらに変更する必要がある場合は、Dev StudioでAuthentication Serviceルールを開きます。 「Mapping」タブで、必要なプロパティをマッピングできます。
TomcatのServer.xmlファイルの変更
Personal EditionやVMマシンでチャレンジを行う場合は、server.xmlファイルを次のように変更します。
- Pega Personal EditionはC:\PRPCPersonalEdition(Windows)にインストールされます。
- C:\PRPCPersonalEdition\tomcat\confからserver.xmlファイルを開きます。
- VM – Linux Liteを使用する場合、server.xmlは/opt/tomcat/confにあります。
- コネクターポートを検索し、以下の変更を加えて80に設定します。
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" /> - デフォルトのホストを検索し、ドメインとなる.comを含むアドレスを入力します。<Engine name="Catalina" defaultHost="www.pegaopenid.com">。
- 同じserver.xmlファイルの中で、ホスト名を検索し、同じ名前を付けます。
<Host name="www.pegaopenid.com"
appBase="webapps"
unpackWARs="true"
autoDeploy="true"> - 変更を加えたら、server.xmlをTomcatに保存します。
- hostsファイルに以下の行を入力します。
- Windowsの場合:C:\Windows\System32\drivers\etc\hosts
- VM- Linux liteの場合:/etc/hosts
127.0.0.1 www.pegaopenid.com(server.xmlで指定した名前)
ファイルに変更を加えると、ドメイン名でPersonal Editionにアクセスできるようになります(ポート番号が不要になる)。
- http://localhost:8080/prweb --変更を加える前
- http://www.pegaopenid.com/prweb --server.xmlとホストファイルに変更を加えた後
4 作業の確認
- Authentication ServiceからログインURLをコピーします。
- 別のブラウザーを開きます(Chromeを使用している場合は、Firefoxを開く)。
- ログインURLをウェブブラウザーに貼り付けます。
- 「Login with Gmail」セクションに、Gmailのログイン情報を入力します。
このモジュールは、下記のミッションにも含まれています。
トレーニングを実施中に問題が発生した場合は、Pega Academy Support FAQsをご確認ください。