Java SDKを使用したOracle Identity Cloud Serviceによるアプリケーションの認証について学ぶ
Oracle Identity Cloud Service認証メカニズムを使用するJava Webアプリケーションを開発する場合は、Java SDKを使用します。このSDKでは、Oracle Identity Cloud Serviceでユーザーを認証するために必要なすべてのREST APIエンドポイント・コールがカプセル化されるため、作業が容易になります。
Oracle Identity Cloud Serviceは、アプリケーションのアイデンティティ管理、シングル・サインオン(SSO)およびアイデンティティ・ガバナンスを提供します。また、Oracle Cloudのセキュリティ・プラットフォームも提供します。これにより、アプリケーションに安全かつ簡単にアクセス、開発およびデプロイできます。Oracle Identity Cloud Serviceは、アイデンティティ・プロバイダとして機能し、認証メカニズムを一元化して、すべてのパスワード管理職責を処理し、アプリケーションにSSOを提供できます。
Oracleには、認証のためにOracle Identity Cloud Serviceと統合できるサンプル・アプリケーションが用意されています。このアプリケーションは、サーブレット・テクノロジを使用して開発されました。サンプルJava Webアプリケーションは、次の2つのタイプのコンテンツで構成されます。
-
公開アクセス可能なページ
-
ユーザーがアプリケーションと持っているセッションでOracle Identity Cloud Serviceユーザー・アクセス・トークンの存在を検証するプライベート・ページ
アーキテクチャ
次のアーキテクチャ図は、Java WebアプリケーションがSDKライブラリを使用して、Oracle Identity Cloud Serviceで3-legged OpenID Connect認証フローを実行する方法を示しています。この認証フローは、認可コード付与タイプに基づくOAuth 2.0認可フローです。この権限タイプを使用することで、ユーザーはOracle Identity Cloud Serviceにサインインする必要があります。ユーザーがサインインすると、再認証を必要とせずに、Oracle Identity Cloud Serviceによって保護されている他のアプリケーションにアクセスできます。
データ・フローは次のようになります。
-
ユーザーが保護されたURLをリクエストします。
-
Oracle Identity Cloud Serviceに、「サインイン」ページが表示されます。
-
ユーザーはサインイン資格証明を送信します。
-
Oracle Identity Cloud Serviceは、Webブラウザを介してJavaアプリケーションに認可コードを発行します。
-
Javaアプリケーションは、SDKを使用して、ユーザー・アクセス・トークンの認可コードを交換します。
-
Javaアプリケーションでは、ユーザーのコンテンツが表示されます。後続のログインの場合、ユーザー・アクセス・トークンはOracle Identity Cloud Service REST APIをコールして、ユーザーに関する詳細情報を取得します。
サンプルJava Webアプリケーションは、本番環境で使用することを意図しておらず、データ処理、パターン、セキュリティなどの言語のベスト・プラクティスには関心がありません。その唯一の目的は、SDKを使用してOracle Identity Cloud ServiceとJava Webアプリケーションを統合するための推奨アプローチに対処することです。
必須サービスおよびロールについて
このソリューションにはOracle Identity Cloud Serviceが必要です。
これらは必要なロールです。
Service: Role | 必須... |
---|---|
Oracle Identity Cloud Service: Security administrator |
Oracle Identity Cloud Serviceコンソールの「ダウンロード」ページにアクセスします。このページでは、Java SDKをダウンロードできます。 |
Oracle Identity Cloud Service: Application administrator |
Oracle Identity Cloud Serviceでアプリケーションを管理します。これには、Oracle Identity Cloud ServiceへのサンプルJavaアプリケーションの登録が含まれます。 |
必要なものを得るには、Oracle製品、ソリューションおよびサービスを参照してください。