Oracle® Fusion Middleware Oracle Access Management管理者ガイド 11g リリース2 (11.1.2.3) for All Platforms E61950-08 |
|
前 |
次 |
Mobile and Socialサービスは、クライアント・デバイスで実行しているアプリケーションを、Oracle Identity Access Management製品スイートで使用可能なセキュリティ・サービスと製品に接続します。
また、ユーザー・プロファイル・サービスはMobile and Socialサービス機能の1つであり、クライアント・アプリケーションを多くの一般的なLDAP準拠ディレクトリ・サーバーに接続します。
次の各項では、Mobile and SocialのMobile and Socialサービスの部分について詳しく説明します。
Mobile and Socialサービスは、サーバー・コンポーネント、サーバー側のデバイス・ストアおよびMobile and Socialサービス・クライアント・ソフトウェア開発キットで構成されます。
コンポーネントの詳細は、次のとおりです。
バックエンドのアイデンティティ・サービス・インフラストラクチャとのインタフェースとなるサーバー・コンポーネント。サーバーは、サポートされているクライアント・アプリケーション(およびそれらのアプリケーションを使用するユーザー)と、バックエンドのアイデンティティ・サービスの間の橋渡しの役割を果たします。このような配置により、クライアント・アプリケーションはバックエンドのインフラストラクチャから分離されるため、クライアント・プログラムを更新しなくても、バックエンドのインフラストラクチャを変更できます。Mobile and Socialサービスは、単独で実行することも、Access ManagerサービスやOAAM製品と組み合せて実行することもできます(「Mobile and Socialの概要」を参照してください)。
OAAMセキュリティ・ハンドラ・プラグインで必要とされるセキュリティ・トークンやセキュリティ情報など、セキュリティ・マテリアルを格納可能なサーバー側デバイス・ストア。サーバー側デバイス・ストアにはいくつかの利点があります。サーバー側デバイス・ストアによって管理されるトークンが、デバイスまたはクライアント・アプリケーションが危険にさらされた場合にコピー可能なクライアント・アプリケーションに送信されないため、セキュリティが向上します。また、モバイル・クライアント・アプリケーションがセキュリティ・マテリアルを管理および同期する必要がなくなります。さらに、セキュリティ・マテリアルを複数のクライアント・アプリケーション間で共有および同期できます。
Mobile and Socialサービス・クライアント・ソフトウェア開発キット(クライアントSDK)には、AndroidデバイスとiOSデバイスおよびJavaに使用できます。これは、モバイル・デバイスとデスクトップ・デバイスで実行するアプリケーションに認証、認可およびディレクトリ・アクセス機能を組み込む場合に使用します。また、Mobile and Socialサービス・クライアントSDKを使用すると、モバイル・シングル・サインオン(SSO)エージェント・アプリケーションを作成することもできます(AndroidデバイスとiOSデバイスのみ)。モバイルSSOの詳細は、「Mobile and Socialサービス用シングル・サインオン(SSO)の理解」を参照してください。Mobile and Socialサービス・クライアントSDKの詳細は、「Mobile and Socialサービス・クライアントSDKの概要」を参照してください。
認証および認可サービスを使用すると、モバイルおよび非モバイル・アプリケーションに既存の認証および認可インフラストラクチャを拡張できます。
Mobile and Socialサービスは、次の一般的なトークン・タイプをサポートします。
ユーザー・トークンは、認証されたユーザーに関連付けられた権限をトークン・ベアラーに付与します。
アクセス・トークンは、WebリソースやURLなど保護されている特定のリソースへのアクセスを許可します。
クライアント・トークンは、Webアプリケーションやサーバー・アプリケーションなどの非モバイル・ハードウェア・デバイスへのアクセスを許可します。
クライアント登録ハンドル(クライアント・トークンと同様)もMobile and Socialサービスで使用されます。これは、モバイル・デバイスで実行しているモバイル・クライアント・アプリケーションを示すものです。Mobile and Socialは、クライアント登録ハンドルを使用して、モバイル・デバイスを登録します。これに対して、非モバイル・サービス・プロバイダは、クライアント・トークンを使用して、非モバイル・デバイスを認証します。
モバイル・デバイスとは、Google社のAndroidモバイル・オペレーティング・システムやApple社のiOSモバイル・オペレーティング・システムなどのモバイル・オペレーティング・システムを実行するデバイスです。一方、非モバイル・デバイスとは、Mac OS X、Windows 7およびLynxデスクトップなどの非モバイル・オペレーティング・システムを実行するデバイスです。モバイル・デバイスと非モバイル・デバイスのセキュリティ上の課題は異なるため、Mobile and Socialではモバイルの認証と非モバイルの認証は別々に管理されます。新しいモバイル・デバイス非常に頻繁にオンラインになるため、不正検出手段など、より詳細な精査を必要とします。
ノート:
非モバイル・デバイスは、適切な入力を提供すると、モバイル・サービスと非モバイル・サービスの両方を使用できます。
Mobile and Socialは、Oracle Access Managerトークン(Mobile and SocialとともにAccess Managerがインストールされている場合)と、JWT (JSON Web Token)トークンをサポートします。それぞれのトークン・タイプには、それに対応するモバイルおよび非モバイル・サービス・プロバイダがあります。Mobile and Socialには、次の6つの事前構成済認証サービス・プロバイダが用意されています。
OAM認証
モバイルOAM認証
JWT認証
モバイルJWT認証
JWT-OAM認証
モバイルJWT-OAM認証
表48-2では、認証サービス・プロバイダについて説明します。
表48-2 Mobile and Socialサービスのモバイルおよび非モバイル認証サービス・プロバイダ
認証サービス・プロバイダ | 説明 |
---|---|
OAMAuthentication |
これによって、デスクトップ・デバイスからWebアプリケーションを実行するユーザーは、Access Managerを使用して認証できます。 |
MobileOAMAuthentication |
これによって、モバイル・デバイスを使用するユーザーは、Access Managerを使用して認証できます。 |
JWTAuthentication |
これによって、デスクトップ・デバイスからWebアプリケーションを実行するユーザーは、JSON Webトークン・フォーマットを使用して認証できます。JSON Web Tokenは、HTTP認可ヘッダーなど、領域に制約がある環境に適したコンパクトなトークン形式です。 |
MobileJWTAuthentication |
これによって、モバイル・デバイスを使用するユーザーは、JSON Webトークン・フォーマットを使用して認証できます。 |
JWTOAMAuthentication |
軽量で継続時間の長いJWTトークンをOAMトークンと交換できるようにします。OAMトークンによりクライアントはSSOリソースおよびOAMリソースにアクセスできます。このプロバイダを使用して、非モバイル・アプリケーションを使用するユーザーは、継続時間の長い有効なJWTトークンがあれば、資格証明の提示なしで新しいOAMトークンを取得できます。 |
MobileJWTOAMAuthentication |
軽量で継続時間の長いJWTトークンをOAMトークンと交換できるようにします。OAMトークンによりクライアントはSSOリソースおよびOAMリソースにアクセスできます。このプロバイダを使用して、モバイル・アプリケーションを使用するユーザーは、継続時間の長い有効なJWTトークンがあれば、資格証明なしで新しいOAMトークンを取得できます。 |
Mobile and Socialサービス認可フローは、クライアント・アプリケーションがAndroid、iOSまたはJava用のMobile and SocialクライアントSDKを使用してモバイル・セキュリティを実装する場合、またはクライアント・アプリケーションがモバイルSSOエージェント・アプリケーション(後述)を使用してモバイル・セキュリティを確立する場合に使用します。
このフローでは、クライアント・アプリケーション(またはモバイルSSOエージェント)はユーザー入力を収集し、モバイル・デバイス上でユーザー・セッションを維持します。
Mobile and Socialサービスの認可フローを表す図は、次の各項を参照してください。
モバイル・シングル・サインオン(モバイルSSO)を使用すると、ユーザーは、同一デバイス上で複数のモバイル・アプリケーションを実行するときに、それぞれの資格証明を提供する必要がなくなります。
ネイティブ・アプリケーションとブラウザベースのアプリケーションは、どちらもモバイルSSOに参加できます。
ノート:
Mobile and Socialサービス・アプリケーションとモバイルOAuthアプリケーションに対しては、別々のSSOを実装する必要があります。モバイルOAuthアプリケーション用シングル・サインオンの詳細は、「モバイルOAuthサービスのサーバー側シングル・サインオンの理解」を参照してください。
モバイルSSOエージェント・アプリケーションの理解
モバイル・デバイスにインストールされている特殊なアプリケーションをモバイルSSOエージェントとして指定できます。このアプリケーションは、リモートのMobile and Socialサーバーと、バックエンドのアイデンティティ・サービスでの認証を必要とするデバイス上の他のアプリケーションの間のプロキシとしての役割を果たします。エージェントは、専用エージェント(他の用途には使用されないアプリケーション)であっても、エージェント機能も同時に提供するビジネス(クライアント)アプリケーションであってもかまいません。
ノート:
アプリケーションでモバイルSSOエージェント・アプリケーションを使用してMobile and Socialサーバーとの認証を行うには、そのサーバーでアプリケーションをモバイルSSOエージェントまたはクライアントとして構成しておく必要があります。モバイルSSO用にMobile and Socialサービス・セキュリティを構成する方法の詳細は、「サービス・ドメインの定義」を参照してください。
モバイルSSOエージェントは、デバイスの登録や高度な認証スキーム(たとえば、マルチファクタ認証やワンタイム・パスワード認証など)を処理するため、このような機能をそれぞれのモバイル・アプリケーションに組み込む必要がなくなります。モバイルSSOエージェントが存在する場合は、ユーザー資格証明がモバイル・ビジネス・アプリケーションに公開されなくなります。モバイルSSOエージェントとSSOクライアントは、次のように相互作用します。
SSOクライアント・アプリケーションは、デバイス登録リクエスト、アプリケーション登録リクエストおよびユーザー・トークン・リクエストをSSOエージェントに送信します。
SSOエージェントは、SSOクライアントのかわりに必要な収集を実行します。
SSOクライアント・アプリケーションは、登録ハンドルとユーザー・トークンを使用して、必要になるアクセス・トークンをリクエストします。
SSOエージェント・アプリケーションは、サーバー側デバイス・ストアと同様に、モバイルSSOクライアントのかわりにトークンおよびセキュリティ・マテリアルを格納します。
ブラウザベースのビジネス・アプリケーションも、認証にモバイルSSOエージェントを使用するように構成できます。その場合は、ブラウザベースのビジネス・アプリケーションを起動すると、モバイルSSOエージェントが起動され、そのエージェントによってユーザー名とパスワードが収集されてMobile and Socialサーバーに送信されます。ビジネス・アプリケーションとエージェントがSSOで認可されると、Mobile and Socialサーバーはアクセスを認可します。続いて、エージェントは、リソース(ビジネス・アプリケーションの代わり)のアクセス・トークンを要求し、ヘッダーに含まれているアクセス・トークンとあわせてブラウザをビジネス・アプリケーションのURLにリダイレクトします。
ユーザーの視点から見た場合、ネイティブ・アプリケーションおよびブラウザベースのアプリケーションは、ユーザーに資格証明を要求することなく、デバイス上に開かれます。モバイル・デバイスにエージェントがインストールされていない場合またはビジネス・アプリケーションがモバイルSSOで承認されない場合は、アプリケーションが一つ一つ起動されるたびに、ユーザーは自分の資格証明をMobile and Socialサーバーに独自に直接送信する必要があります。
モバイルSSOエージェントは、アイドル・セッションをタイムアウトにしたり、すべてのアプリケーションのグローバル・ログアウトを管理したり、デバイス選択消去をサポートできます。さらに、エージェントは、基本的なオフライン認証もサポートします。エージェントは、ローカル・ストレージ用にユーザー・パスワードの一方向暗号化を行います。オフライン認証の場合、エージェントは、ユーザー名とパスワードの検証に、ローカルに保存されているバージョンを使用します。エージェントは、すべてのセッションのアイドル・タイムアウトと、ローカル・パスワードの有効期限ポリシーを強制します。
モバイルSSOエージェントを使用する場合、アプリケーションは、ユーザーに資格証明を要求することなく、デバイス上で開かれます。モバイル・デバイスにエージェントがインストールされていない場合またはビジネス・アプリケーションがモバイルSSOで承認されない場合は、アプリケーションが一つ一つ起動されるたびに、ユーザーは自分の資格証明をMobile and Socialサーバーに独自に直接送信する必要があります。
事前構築済のモバイルSSOエージェントは提供されていませんが、AndroidまたはiOS用のMobile and Socialサービス・クライアントSDKを使用してモバイルSSOエージェント・アプリケーションを構築できるようにドキュメントが提供されています。モバイルSSOエージェント・アプリケーション作成の詳細は、『Oracle Fusion Middleware Oracle Access Management開発者ガイド』のAndroidまたはiOSのMobile and SocialサービスSDKに関するドキュメントを参照してください。
ノート:
モバイルSSOエージェントは、AndroidデバイスとiOSデバイスでのみサポートされます。
Mobile and Socialサービス・クライアントSDKには、AndroidおよびiOSデバイス用とJava仮想マシン(JVM)用の個別のSDKが含まれています。
表48-3では、各Mobile and Socialサービス・クライアントSDK機能と、その機能が動作するソフトウェアについて説明します。
表48-3 Mobile and Socialサービス・クライアントSDKのAndroid機能、iOS機能およびJava機能
機能 | Android | iOS | Java |
---|---|---|---|
Mobile and Socialサーバー経由でのクライアント登録ハンドル、ユーザー・トークンおよびアクセス・トークンを取得可能なモバイル・アプリケーションの作成 |
4 |
4 |
|
Mobile and Socialサーバー経由でのクライアント・トークン、ユーザー・トークンおよびアクセス・トークンを取得可能なデスクトップ・アプリケーションの作成 |
4 |
||
ディレクトリ・サーバーとの連携およびユーザー・プロファイル・サービスの実装 |
4 |
4 |
4 |
モバイル・シングル・サインオン(SSO)アプリケーションの作成 |
4 |
4 |
ユーザー・プロファイル・サービスにより、組織のユーザーがモバイル・デバイスからユーザー・プロファイル・サービスにアクセスできるアプリケーションを作成できます。
ユーザー・プロファイル・サービスを使用すると、Web、モバイルおよびデスクトップ・アプリケーションは、次に示すような各種のLDAP準拠のディレクトリ・サーバーのタスクを実行できるようになります。
ユーザーおよびグループの作成、読取り、更新および削除機能
検索機能
組織図のレポート機能
これを達成するために、Mobile and Socialサーバーは、次にあげる多くの一般的なLDAP準拠のディレクトリ・サーバーとインタフェース接続できます。
Microsoft Active Directory
Novell eDirectory
Oracle Directory Server Enterprise Edition
Oracle Internet Directory
Oracle Unified Directory
Oracle Virtual Directory
Open LDAP
WebLogic Server Embedded LDAP
ユーザー・プロファイル・サービスに対するSDKの使用方法を示すコード例については、『Oracle Fusion Middleware Oracle Access Management開発者ガイド』を参照してください。
ノート:
HTTP通信が可能なデバイスは、RESTコールをMobile and Socialサーバーに送信することで、ユーザー・プロファイル・サービスを使用できます。『Oracle Fusion Middleware Oracle Access Management開発者ガイド』のcURLを使用したMobile and Social RESTコールの送信に関する項を参照してください。