28 Oracle Access ManagementのIdentity Federationの概要

フェデレーションとは、複数のグループまたはパーティを結合することによって形成されるアソシエーションです。フェデレーテッド環境(アイデンティティ管理レルムで定義)とは、サービスとアイデンティティ・データを提供する組織(ビジネス・パートナ)が、保護されたリソース・セットへのアクセスを共有しながら、これらのリソース・セットを不正アクセスから保護できるように信頼を確立している環境のことです。Oracle Identity Federationを使用すると、会社がフェデレーションを形成し、サービスとデータを個々のセキュリティ・ドメイン間で安全に共有できるメカニズムが提供されるため、ビジネス・パートナはこのことを実現できます。

Oracle Access Managementの11gリリース2 (11.1.2.3)では、スタンドアロンのOracle Identity Federation製品とOracle Access Managerとの統合が実現しています。この章では、統合されたIdentity Federationについて紹介します。内容は次のとおりです。

28.1 Identity FederationとAccess Managerとの統合

Oracle Identity Managementフレームワークは、クロスドメインのシングル・サインオンで次の2つの方法をサポートしています。それぞれ独立しているため、これらの方法を組み合せることはできません。

設定に基づいて、次のいずれかを実行します。

  1. 11gリリース2 (11.1.2)から、Oracle Access Management Access Managerサーバー(OAMサーバー)は、Oracle Access Management Identity Federationサーバーと統合されています。Identity Federationサーバーの構成はすべてOracle Access Managementコンソールを使用して実行します。
  2. 以前の各リリースのOracle Identity Federation (11.1.1)とOracle Access Managerをデプロイして、フェデレーション機能を提供することもできます。この統合用に両方のサーバーを構成し、管理する必要があります。この方法は11gリリース1 (11.1.1)の時点ですでに存在しており、引き続き使用できます。

ノート:

このマニュアルのトピックは、フェデレーションとその機能に関するある程度の知識があることを前提としています。背景と概念については、Oracle Fusion Middleware Oracle Identity Federation管理者ガイドOracle Identity Federationの概要に関する項を参照してください。12cでは、Oracle Identity Federation機能はAccess Managerと統合されているため、この最新のドキュメントではOracle Identity Federation機能についてのみ説明します。

Access Managerに統合された新しいIdentity Federation 12cサーバーの利点は次のとおりです。

  • 各サーバーへの個別のインストールや管理が不要になります。

  • インストール後のフェデレーション機能の構成が簡略化されます(特に、Oracle Access Managementコンソールからそれらの機能にアクセスする場合)。

  • 2つのサービスを連携させるスケーラビリティが向上します。

  • 診断およびトラブルシューティングの機能が強化されます。

28.2 Oracle Access ManagementでのIdentity Federationのデプロイ

機能上、Identity Federationサービスを使用した(ユーザーがWebブラウザを使用して保護されたリソースにログインする場合)コンポーネントには、Access Managerサーバー、Oracle WebLogicサーバー・ホストおよびデータ・ストアがあります。

Access Managerサーバー

Access Managerサーバーには、フェデレーテッド・コンテキストで管理サービスにアクセスする際に必要なコンポーネントがすべて含まれています。コンポーネントは次のとおりです。

  • 資格証明コレクタ

  • フェデレーション認証プラグイン

  • アサーションを生成および処理するIdentity Federationエンジン

  • フェデレーション・データ・キャッシュ

Oracle WebLogic Server

Oracle WebLogic Serverは、次のような主要なインフラストラクチャ・サービスをホストし、提供します。

  • Oracle Entitlement Serverと相互作用する認可エンジン

  • トラスト・サークルの詳細や他の構成を含むフェデレーション・データ

データ・ストア

認証タスクに必要なアイデンティティ・データは、アイデンティティ・ストアなどのデータ・ストアで保持されます。Identity Federationは、Access Manager共通ユーザー・ストアをサポートし、複数のアイデンティティ・ストアのサポートを提供します。永続アカウント・リンク用フェデレーション・データはデータベースに格納できます。

ノート:

コールは通常のHTTPコールです。

28.3 Identity Federationの動作についての理解

フェデレーションは任意の数のアイデンティティ・プロバイダとサービス・プロバイダで構成できます。フェデレーテッド・ネットワークのIdentity Federationインスタンスは、アイデンティティ・プロバイダまたはサービス・プロバイダ、あるいはその両方として機能します。

一般的なフェデレーテッド・ネットワーク・トポロジの1つに、ハブ・アンド・スポーク・モデルと呼ばれるものがあります。このトポロジでは、1つのサービス・プロバイダが複数のアイデンティティ・プロバイダから認証を受け入れるか、1つのアイデンティティ・プロバイダが複数のサービス・プロバイダに対して認証を実施します。

  • サービス・プロバイダ(SP)は、ニュース・ポータル、財務リポジトリ、小売り窓口などのWebベース・サービスを提供する民間または非営利の組織です。フェデレーテッド・ネットワークのSPとして構成されている場合、ユーザーがOracle Access Managerなどの認証エンジンによって保護されているリソースにアクセスしようとすると、Identity Federationはグローバル認証のためにユーザーをIdPにリダイレクトします。IdPは資格証明を取得し、ユーザーを認証し、ユーザーをIdentity Federationサーバー・インスタンスにリダイレクトして戻します。ここで、IdPからアサートされているアイデンティティが取得され、認証済ユーザーは、保護されているリソースへのアクセスを提供する認証エンジンにリダイレクトされます。

  • アイデンティティ・プロバイダ(IdP)は、アイデンティティ・プロファイルを格納するサービス・プロバイダです。(アイデンティティ・プロバイダは、前述のサービスと、アイデンティティ・プロファイル・ストレージ関連サービス以外のサービスも提供する場合があります。)フェデレーテッド・ネットワークでIdPとして構成されている場合、ユーザーが保護されているリソースにアクセスしようとすると、リソースのSPがユーザーをIdentity Federationサーバー・インスタンスにリダイレクトします。ここでは、Access Manager認証エンジンを使用して、資格証明が取得され、ユーザーが認証されます。認証が成功すると、Identity FederationインスタンスがユーザーのアイデンティティをリソースのSPに対してアサートできます。SPは、ユーザーを認証し、保護されているリソースへのアクセスを提供します。

統合されたIdentity Federationサーバーは、IdPとしてでもSPとしてでも機能できます。これらのプロバイダ・モードのいずれかで機能するようにIdentity Federationを構成し、フェデレーション内のリモート・パートナと通信する方法の詳細は、「Identity Federationパートナの管理」を参照してください。

28.4 Identity Federationの使用

SPが開始するSSOでは、SPがIdPに認証リクエストを送信すると、フェデレーテッドSSOプロセスが開始されます。IdPが開始するSSOでは、IdPがSPに非送信請求アサーション・レスポンスを送信します(SPからの認証リクエストがない場合)。両方のモードでサポートされているランタイム・フローには、SSO、ログアウト(リモート・フェデレーション・パートナまたはAccess Manager保護アプリケーションから開始)および属性問合せが含まれます。

28.4.1 SSOのアーカイブ

Identity Federation (IdPとして機能)がSPとフェデレーテッドSSOを実行している場合、Access Managerサーバーはユーザーを認証するか、認証済ユーザーが非アクティブを理由にしてチャレンジを受けることがないようにします。

また、Access Managerサーバーは、SPによって指定されている、要求されたフェデレーション認証方式が、認証レベルに基づいたチャレンジを必要としていないことを確認します。このことは、認証方式に対する認証スキーム・マッピングにより判断されます。(SPがフェデレーション認証方式を指定していない場合、IdPは、defaultschemeidプロパティでSPパートナに対して指定されている認証方式を使用します。)詳細は、「フェデレーションSSOの開始」を参照してください。

28.4.2 ログアウト

Identity Federationにより、ログアウト操作は認証操作から分離されています。ログアウトはユーザー(Access Managerサーバー)またはフェデレーション内のパートナによって開始できます。

  • Access Managerログアウト・サービスにアクセスしているユーザーによって開始された場合、Access ManagerがそのユーザーのAccess Managerセッションを中断し、ログアウト・ページを表示し、ここから、様々なWebゲート・エージェントにユーザーのCookieを削除するよう指示が出ます。そして、Access Managerは、ユーザーをIdentity Federationログアウト・サービスにリダイレクトし、このサービスが、ログアウト・リクエスト・メッセージとともにユーザーをHTTPリダイレクトまたはHTTP POST経由でリダイレクトするか、ログアウト・リクエスト・メッセージをSOAP経由で直接送信することにより、このセッションに関与する各パートナへの通知を行います。Identity FederationはOIFセッションを強制終了し、定義された戻りURLにユーザーをリダイレクトします。

  • フェデレーション内のパートナからWebサイト上のユーザーによって開始された場合、パートナがユーザーをIdentity Federationサーバーにリダイレクトし、ここで、ユーザー・セッションがログアウトとしてマークされます。次に、Identity FederationがユーザーをAccess Managerサーバーにリダイレクトし、ここでユーザーのAccess Managerセッションが強制終了されます。Access Managerは、ログアウト・ページを表示し、ここから、様々なWebゲート・エージェントにユーザーのCookieを削除するよう指示が出ます。そして、Access Managerは、ユーザーをリダイレクトによりIdentity Federationに戻し、ログアウト・リクエスト・メッセージとともにユーザーをHTTPリダイレクトまたはHTTP POST経由でリダイレクトするか、ログアウト・リクエスト・メッセージをSOAP経由で直接送信することにより、このセッションに関与する各パートナ(最初にユーザーをリダイレクトしたパートナを除く)への通知を行って、Federationログアウト・プロセスを再開します。Identity FederationはOIFセッションを強制終了し、最初にユーザーをIdentity Federationサーバーにリダイレクトしたパートナに、ユーザーをログアウト・レスポンス・メッセージとともにリダイレクトします。

28.4.3 認可

Identity Federationサーバーは、IdPとして機能する場合、Federation SSO操作中、アイデンティティ・トークンをSPに発行する必要があります。

アイデンティティ・トークンは、ユーザー情報とセッション情報を含みます。デフォルトでは、認可機能は無効になっています。この機能は、configureFedSSOAuthz WLSTコマンドを使用して、有効にも無効にもできます。TokenServiceRPタイプのリソースと(リソースURLをSPパートナIDに設定)、リソースが追加されるトークン発行ポリシーを作成する必要もあります。トークン発行ポリシーは、トークンの発行条件を示します。

28.4.4 強制認証

SAML 2.0とOpenID 2.0は、有効なユーザー・セッションがすでに存在している場合でもユーザーがIdPによってチャレンジを受ける必要があるかどうかを、フェデレーションSSO中にSPが示す方法を提供しています。

この場合、SPは、IdPがユーザーに対して再度チャレンジを渡す必要がある、つまり強制認証を行う必要があることを示すパラメータ付きの認証リクエストを送信します。

28.4.5 パッシブ・アイデンティティ・プロバイダの指定

SAML 2.0とOpenID 2.0は、Identity Providerがユーザーと対話する必要があるかどうかを、フェデレーションSSO中にSPが示す方法を提供しています。

この場合、SPは、IdPがユーザーと対話する必要がない、つまりパッシブでいる必要があることを示すパラメータ付きの認証リクエストを送信します。IdPは、パラメータを認識し、それぞれ次の内容をSPに戻します。

  • エラー(IdPがユーザーと対話する必要があるが、このパラメータによりそれができない場合)。

  • ユーザーが有効なセッションを持っているかどうかを示すフェデレーション・アサーション。

28.4.6 ユーザーとアサーションのマッピング

Identity Federationでは、IdPパートナが作成したSAMLアサーションのSPによる検証が終わると、そのアサーションをローカル・ユーザーにマップできます。

次のいずれかの方法で、Identity FederationによってSAMLアサーションがローカル・ユーザーにマップされます。

  • ユーザー属性(mailなど)を持つユーザー・レコードにSAMLサブジェクトをマップする方法。

  • ユーザー属性を持つユーザー・レコードにSAMLアサーション属性をマップする方法(たとえば、SAMLアサーション属性emailAddressmailにマップ)。

  • LDAP問合せを使用して、SAMLアサーションのAttributeStatement要素に含まれる1つ以上の属性またはSAMLサブジェクトをマップする方法。SAML属性名およびこのマップ先となるユーザー属性の両方を構成する必要があります。

28.4.7 プラットフォームとの依存関係

このアーキテクチャでは、資格証明ストア・フレームワーク(CSF)を使用する際にOracle Fusion Middlewareプラットフォームを利用します。

CSFは、キーストア・パスワードと、サーバーの資格証明(HTTP Basic認証のユーザー名とパスワードなど)を安全に格納します。

28.5 フェデレーションSSOの開始

フェデレーションSSOプロセスは、Identity FederationがIdPまたはSPとして動作している場合に開始できます。

28.5.1 IdPが開始するフェデレーションSSOサービス

IdPが開始するフェデレーションSSOサービスには、providerid、returnurlおよびacsurlの3つの問合せパラメータがあります。

Identity FederationがIdPとして機能する場合、フェデレーションSSOを開始するためのURLは次のとおりです。

http://public-oam-host:public-oam-port/oamfed/idp/initiatesso

問合せパラメータは次のとおりです。

  • providerid: フェデレーションSSOを実行するSPパートナの名前、またはフェデレーションSSOを実行するSPパートナの発行者ID/プロバイダID。(必須)

  • returnurl: フェデレーションSSOの成功後ユーザーがリダイレクトされるSP URL(オプション)

  • acsurl: Identity FederationがSAML 2.0アサーションでユーザーをリダイレクトするSAML 2.0アサーション・コンシューマ・サービスURL。このURLはSP SAML 2.0メタデータで宣言する必要があります。(オプション)

SAMLアサーションの複数値属性
28.5.1.1 SAMLアサーションの複数値属性

この機能のデフォルト動作では、ユーザーが複数のグループに属し、always sendtrueに設定されている場合、SSO時に、IdPによってGroup属性がカンマ区切りの形式で送信されます。拡張動作では、multivaluegroupsフラグがtrueに設定されている場合、SSO時に、IdPによってGroup属性がカンマ区切りではなく別個のSAML文で送信されます。

次のSSOプロトコルでは、複数値のGroups SAML属性がサポートされます。

  • SAML 2.0

  • SAML 1.1

  1. この機能を有効にするには、OAM構成を要件に応じて更新する必要があります。multivaluegroups属性設定はデフォルトでは無効になっており、oam-config.xmlに存在しません。ユーザーは、WLSTコマンドを使用してoam-config.xmlにこの設定を追加してtrueに設定し、Group属性に対して複数の属性文を有効にする必要があります。

  2. WLSTコマンドを使用してmultivaluegroups属性設定をoam-config.xmlのパートナ・レベル、パートナ・プロファイル・レベルまたはグローバル・レベルに追加し、trueに設定ます。

    <Setting Name="multivaluegroups" Type="xsd:boolean">true</Setting>

    • パートナ・レベルでのmultivaluegroupsの有効化または無効化

      updatePartnerProperty(partnerName="spPartnername", partnerType="SP",propName="multivaluegroups",propValue="true/false",type="boolean");

    • パートナ・プロファイル・レベルでのmultivaluegroupsの有効化または無効化

      putBooleanProperty("/fedpartnerprofiles/saml20-sp-partner-profile/multivaluegroups","true/false");

    • グローバル・レベルでのmultivaluegroupsの有効化または無効化

      putBooleanProperty("/idpglobal/multivaluegroups","true/false");

28.5.2 SPが開始するフェデレーションSSOサービス

SPが開始するフェデレーションSSOサービスには、provideridおよびreturnurlの2つの問合せパラメータがあります。

Identity FederationがSPとして機能する場合、フェデレーションSSOを開始するためのURLは次のとおりです。

http://public-oam-host:public-oam-port/oamfed/sp/initiatesso

問合せパラメータは次のとおりです。

  • providerid: フェデレーションSSOを実行するIdPパートナの名前、またはフェデレーションSSOを実行するIdPパートナの発行者ID/プロバイダID。(必須)

  • returnurl: フェデレーションSSOの成功後ユーザーがリダイレクトされるURL(オプション)

28.5.3 属性コンシューミング・サービス

OAMフェデレーション・サービスは、標準のSAML2vベースのインタフェースおよび要素をサポートするために拡張されています。

この節では、以下のトピックについて説明します。

28.5.3.1 属性コンシューミング・サービスの要素

属性コンシューミング・サービスには、AttributeConsumingServiceAttributeConsumingServiceIndexおよびNameQualifierという3つの要素が含まれます。

AttributeConsumingService

AttributeConsumingService要素は、SPメタデータに含まれています。この要素には、次のフィールドが含まれています。

  • ServiceName

  • ServiceDescription

  • index

  • isDefault

  • RequestedAttributeには、次のフィールドが含まれています。
    • acsIndex

    • rqstAttrName

      ノート:

      rqstAttrNameフィールドは、namefiscal numberemailなど、任意のユーザー定義値にできます。
    • rqstAttrNameFormat

    • rqstAttrFriendlyName

    • rqstAttrIsRequired

SPメタデータの例:

<md:AttributeConsumingService index="1" isDefault="false">
	<md:ServiceName xml:lang="en_US">serviceName1</md:ServiceName> 
	<md:ServiceDescription xml:lang="en_US">serviceDesc1</md:ServiceDescription> 
	<md:RequestedAttribute FriendlyName="friendlyName1" Name="email" NameFormat="sample:urn:format" isRequired="true"/>
</md:AttributeConsumingService>
 
<md:AttributeConsumingService index="1" isDefault="true"> 
	<md:ServiceName xml:lang="eng">Updated-Service-Name1</md:ServiceName>
	<md:ServiceDescription xml:lang="eng">updatedServiceDesc</md:ServiceDescription>
	<md:RequestedAttribute FriendlyName="friendlyName1" Name="email" NameFormat="sample:urn:format" isRequired="true"/>
	<md:RequestedAttribute FriendlyName="" Name="empNum" NameFormat="empFormat1" isRequired="false"/>
	<md:RequestedAttribute FriendlyName="fname" Name="empFirstName" NameFormat="firstnameformat1" isRequired="true"/> 
</md:AttributeConsumingService>

AttributeConsumingService

AttributeConsumingServiceIndex要素は、SAML 2.0認証リクエストに含まれています。ランタイムSSOで、AttributeConsumingServiceIndexauthnrequestに表示されるよう、SPで開始されたURLでattributeconsumingserviceindexパラメータを渡します。

たとえば、http://sp-host:sp-managed-port/oamfed/sp/initiatesso?providerid=http://idp-host:idp-managed-port/oam/fed&returnurl=http://sp-host:webgate-port/cgi-bin/headers.cgi&attributeconsumingserviceindex=1となります。

認証リクエストの例:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
	<samlp:AuthnRequest xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:enc="http://www.w3.org/2001/04/xmlenc#" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:x500="urn:oasis:names:tc:SAML:2.0:profiles:attribute:X500" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" AttributeConsumingServiceIndex="1" ID="id-atMY1jR9Vh7PBcWSjdqmyxIc1JNMSFD-zQ1d7lf8" Version="2.0" IssueInstant="2016-09-15T22:32:37Z" Destination="http://slc05ynv.us.oracle.com:21328/oamfed/idp/samlv20">
		<saml:Issuer Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity">http://slc06fcv.us.oracle.com:23768/oam/fed</saml:Issuer>
		<samlp:NameIDPolicy AllowCreate="true"/>
	</samlp:AuthnRequest>	

NameQualifier

NameQualifier要素は、<samlp:issuer>タグ内に含まれています。

例:

<saml:Issuer NameQualifier=" http://spid-sp.it"
Format=" urn:oasis:names:tc:SAML:2.0:nameid format:entity"> SPID-sp-test </saml:Issuer>

デフォルトでは、NameQualifierはfalseに設定されています。WLSTコマンドを使用して、oam-config.xmlファイル内でNameQualifiertrueに設定できます。WLSTコマンドの詳細は、WebLogic Server WLSTコマンド・リファレンスを参照してください。

次の表では、WLSTコマンドを使用してNameQualifier要素を有効または無効にする方法を示します。

アクション WLSTコマンド例
パートナ・レベルでNameQualifierを有効にします。
updatePartnerProperty(partnerName="idp-partner",partnerType="IDP",propName="samlrequestissuernamequalifier",propValue="http://sample.sp.it",type="string")
パートナ・プロファイル・レベルでNameQualifierを有効にします。
putStringProperty("/fedpartnerprofiles/saml20-idp-partner-profile/samlrequestissuernamequalifier","http://profile-sample.it")
グローバル・レベルでNameQualifierを有効にします。
putStringProperty("/spglobal/samlrequestissuernamequalifier","http://spglobal.it")
パートナ・レベルでNameQualifierを無効にします。
deletePartnerProperty(partnerName="idp-partner",partnerType="IDP",propName="samlrequestissuernamequalifier")
パートナ・プロファイル・レベルでNameQualifierを無効にします。
deleteStringProperty("/fedpartnerprofiles/saml20-idp-partner-profile/samlrequestissuernamequalifier")
グローバル・レベルでNameQualifierを無効にします。
deleteStringProperty("/spglobal/samlrequestissuernamequalifier")
28.5.3.2 属性コンシューミング・サービスのWLSTコマンド

属性コンシューミング・サービスは、10個のWebLogic Scripting Tool (WLST)コマンドでサポートされます。

詳細は、次の各項を参照してください。

28.5.3.2.1 getDefaultACS

このコマンドは、デフォルトの属性コンシューミング・サービスを取得します。

説明

getDefaultACSコマンドは、デフォルトの属性コンシューミング・サービスを取得します。

構文

getDefaultACS()

この例では、getDefaultACSコマンドの使用方法を示します。

getDefaultACS()

28.5.3.2.2 getAllRqstAttrsForACS

このコマンドは、指定された属性コンシューミング・サービスacsIndexの下のリクエストされた属性のリストを取得します。

説明

getAllRqstAttrsForACSコマンドは、指定された属性コンシューミング・サービスacsIndexの下のリクエストされた属性のリストを取得します。

構文

getAllRqstAttrsForACS(acsIndex) 
引数 説明
acsIndex [必須] 属性コンシューミング・サービスのインデックス。

この例では、getAllRqstAttrsForACS(acsIndex)コマンドの使用方法を示します。

getAllRqstAttrsForACS(1)
28.5.3.2.3 getAllACS

このコマンドは、構成されているすべての属性コンシューミング・サービスのリストを取得します。

説明

getAllACSコマンドは、構成されているすべての属性コンシューミング・サービスのリストを取得します。

構文

getAllACS()

この例では、getAllACS()コマンドの使用方法を示します。
getAllACS()
28.5.3.2.4 getACS

このコマンドは、指定された属性コンシューミング・サービスacsIndexを取得します。

説明

getACSコマンドは、指定された属性コンシューミング・サービスacsIndexを取得します。

構文

getACS(acsIndex)
引数 定義
acsIndex [必須] 属性コンシューミング・サービスのインデックス。

この例では、getACS(acsIndex)コマンドの使用方法を示します。
getACS(1)
28.5.3.2.5 addACS

このコマンドは、acsIndexserviceNameattributeConsumingIsDefaultrqstAttrNamerqstAttrNameFormatrqstAttrFriendlyNamerqstAttrIsRequiredおよびserviceDescriptionを使用して属性コンシューミング・サービスの新規エントリを作成します。

説明

このコマンドは、acsIndexserviceNameattributeConsumingIsDefaultrqstAttrNamerqstAttrNameFormatrqstAttrFriendlyNamerqstAttrIsRequiredおよびserviceDescriptionを使用して属性コンシューミング・サービスの新規エントリを作成します。

属性コンシューミング・サービスの作成時には、少なくとも1つのリクエストされた属性について詳細を提供する必要があります。<xml:lang>パラメータは、サーバー・ロケールで自動的に更新されます。

ノート:

GETおよびDELETE WLSTコマンドを実行するには、acsIndexを使用してaddACSを作成する必要があります。

構文

addACS(acsIndex, serviceName, rqstAttrName, rqstAttrNameFormat, rqstAttrFriendlyName="", rqstAttrIsRequired="false", serviceDescription="", attributeConsumingIsDefault="false")
引数 定義
acsIndex [必須] 属性コンシューミング・サービスのインデックスを指定します。
serviceName [必須] サービスの名前を指定します。
rqstAttrName [必須] リクエストされた属性の名前を指定します。
rqstAttrNameFormat [必須] リクエストされた属性の形式を指定します。
rqstAttrFriendlyName [オプション] 属性コンシューミング・サービスのフレンドリ名を指定します。
rqstAttrIsRequired [オプション] リクエストされた属性が必要かどうかを決定します。有効は値は、trueおよびfalseです。
serviceDescription [オプション] サービスの説明を指定します。デフォルト値は「 」です。
attributeConsumingIsDefault [オプション] デフォルトの属性コンシューミング・サービスを設定するには、この値を受け入れます。デフォルト値はfalseです。

この例では、addACSコマンドの使用方法を示します。

addACS(1, "Updated-Service-Name1", "email", "sample:urn:format", rqstAttrFriendlyName="", rqstAttrIsRequired="false", serviceDescription="updatedServiceDesc", attributeConsumingIsDefault="true")
28.5.3.2.6 addRqstAttrToACS

このコマンドは、指定された属性コンシューミング・サービスacsIndexのリストの下のrqstAttrNamerqstAttrNameFormatrqstAttrFriendlyNameおよびrqstAttrIsRequiredなど、リクエストされた新規属性を追加します。

説明

addRqstAttrToACSコマンドは、指定された属性コンシューミング・サービスacsIndexのリストの下のrqstAttrNamerqstAttrNameFormatrqstAttrFriendlyNameおよびrqstAttrIsRequiredなど、リクエストされた新規属性を追加します。

構文

addRqstAttrToACS(acsIndex, rqstAttrName, rqstAttrNameFormat, rqstAttrFriendlyName=None, rqstAttrIsRequired="false"): 
引数 定義
acsIndex [必須] 属性コンシューミング・サービスのインデックスを指定します。
rqstAttrName [必須] リクエストされた属性の名前を指定します。
rqstAttrNameFormat [必須] リクエストされた属性の形式を指定します。
rqstAttrFriendlyName [オプション] 属性コンシューミング・サービスのフレンドリ名を指定します。
rqstAttrIsRequired [オプション] リクエストされた属性が必要かどうかを決定します。有効は値は、trueおよびfalseです。

この例では、addRqstAttrToACSコマンドの使用方法を示します。

addRqstAttrToACS(1, "empNumber", "empFormat1", rqstAttrFriendlyName=None, rqstAttrIsRequired="false"): 
28.5.3.2.7 updateACS

このコマンドは、指定された属性コンシューミング・サービスoldACSIndexの任意またはすべてのフィールドを更新します。

説明

updateACSコマンドは、指定された属性コンシューミング・サービスoldACSIndexの任意またはすべてのフィールド(つまり、newServiceNamenewServiceDescriptionnewAttributeLangnewIsDefaultおよびnewACSIndex)を更新します。

構文

updateACS(oldACSIndex, newServiceName=None, newServiceDescription=None, newAttributeLang=None, newIsDefault=None, newACSIndex=None)
引数 定義
oldACSIndex [必須] 既存の属性コンシューミング・サービス・インデックスの名前を指定します。
newServiceName [オプション] 属性コンシューミング・サービスの更新した名前を指定します。
newServiceDescription [オプション] 属性コンシューミング・サービスの更新した説明を指定します。
newAttributeLang [オプション] 属性コンシューミング・サービスの名前および説明のための、更新したxml:langを指定します。
newIsDefault [オプション] 属性コンシューミング・サービスに新しいデフォルト値を設定するには、trueまたはfalseなどの値を受け入れます。有効は値は、trueおよびfalseです。
newACSIndex [オプション] 新しい属性コンシューミング・サービス・インデックスの名前を指定します。

この例では、updateACSコマンドの使用方法を示します。

ノート:

ACSを正常に更新するには、acsIndexとともに少なくとも1つのオプション・パラメータが必要です。
  • newServiceNameフィールドのみを更新するには、次のコマンドを使用します。
    updateACS(1, newServiceName="SampleAttributeName");
  • newServiceNameisdefaultを両方とも更新するには、次のコマンドを使用します。
    updateACS(1, newServiceName="SampleAttributeName", newIsDefault="true");
28.5.3.2.8 updateRqstAttrForACS

このコマンドは、指定された属性コンシューミング・サービスacsIndexの下の指定されたリクエスト済属性oldRqstAttrNameのすべてのフィールドを更新します。

説明

updateRqstAttrForACSコマンドは、指定された属性コンシューミング・サービスacsIndexの下の指定されたリクエスト済属性oldRqstAttrNameのすべてのフィールドを更新します。

構文

updateRqstAttrForACS(acsIndex, oldRqstAttrName, newRqstAttrName=None, newRqstAttrFriendlyName=None, newRqstAttrNameFormat=None, newRqstAttrIsRequired=None)
引数 定義
acsIndex [必須] 属性コンシューミング・サービスのインデックスを指定します。
oldRqstAttrName [必須] フィールドを更新する、既存のリクエストされた属性の名前を指定します。
newRqstAttrName [オプション] リクエストされた属性の更新した名前を指定します。
newRqstAttrFriendlyName [オプション] リクエストされた属性の更新したフレンドリ名を指定します。
newRqstAttrNameFormat [オプション] リクエストされた属性の名前の更新した形式を指定します。
newRqstAttrIsRequired [オプション] リクエストされた属性が属性コンシューミング・サービスから必要となるかどうかを決定します。有効は値は、trueおよびfalseです。

この例では、updateRqstAttrForACSコマンドの使用方法を示します。

ノート:

指定されたリクエスト済属性を正常に更新するには、acsIndexとともに少なくとも1つのオプション・パラメータが必要です。
  • newRqstAttrNameのみを更新するには、次のコマンドを使用します。
    updateRqstAttrForACS(acsIndex, oldRqstAttrName, newRqstAttrName="SAMPLE_RQST_ATTR");
  • リクエストされた属性のnewRqstAttrNameおよびnewRqstAttrNameFormatを更新するには、次のコマンドを使用します。
    updateRqstAttrForACS(acsIndex, oldRqstAttrName, newRqstAttrName="SAMPLE_RQST_ATTR", newRqstAttrNameFormat="urn:oasis:sample");
28.5.3.2.9 deleteACS

このコマンドは、指定された属性コンシューミング・サービスacsIndexを削除します。

説明

deleteACSコマンドは、指定された属性コンシューミング・サービスacsIndexを削除します。

構文

deleteACS(acsIndex)
引数 説明
acsIndex [必須] 属性コンシューミング・サービスのインデックスを指定します。

この例では、deleteACSコマンドの使用方法を示します。
deleteACS(1)
28.5.3.2.10 deleteRqstAttrForACS

このコマンドは、リクエストされた属性rqstAttrNameを、指定された属性コンシューミング・サービスacsIndexから削除します。

説明

deleteRqstAttrForACSコマンドは、リクエストされた属性rqstAttrNameを、指定された属性コンシューミング・サービスacsIndexから削除します。

構文

deleteRqstAttrForACS(acsIndex, rqstAttrName)
引数 説明
acsIndex [必須] 属性コンシューミング・サービスのインデックスを指定します。
rqstAttrName [必須] リクエストされた属性の名前を指定します。

この例では、deleteRqstAttrForACSコマンドの使用方法を示します。
deleteRqstAttrForACS(1, rqstAttrName="empFirstName")

28.6 Identity Federationデータの交換

統合されたIdentity Federationサーバーは、Security Access Markup Language (SAML) 2.0仕様、SAML 1.1、OpenID 2.0またはWS-Federation 1.1のいずれかを使用してリクエスト・メッセージとレスポンス・メッセージの転送と受信をサポートします。

この節では、以下のトピックについて説明します。

ノート:

特定のコンテキストでSAMLが使用される方法を示す仕様は、SAMLプロファイルと呼ばれます。SAMLアサーションまたはメッセージが別のプロトコルで転送される方法を示す仕様は、SAMLバインディングと呼ばれます。

28.6.1 SAML 2.0の使用

SAMLは、eXtensible Markup Language (XML)フレームワークを使用して、SAMLアサーションを提供するベンダー・プラットフォーム間の相互運用性を実現するためのシンプルなリクエスト-レスポンス・プロトコルを定義します。

SAMLリクエスタはSAMLリクエスト要素をレスポンダに送信します。同様に、SAMLレスポンダはSAMLレスポンス要素をリクエスタに戻します。SAML 2.0プロトコル内部で、Identity Federationは次の各項で説明する機能をサポートします。

28.6.1.1 SSOとフェデレーションのためのSAML 2.0バインディング

SSOとフェデレーションは、認証情報を転送するSAMLアーティファクトとアサーションに依存します。

SSOとフェデレーションにおけるデータ交換に対して次のバインディングがサポートされています。

  • HTTPアーティファクト・バインディングは、アーティファクト解決プロトコルとSAML SOAPバインディング(HTTP経由)を使用して、参照によりSAMLメッセージを解決します。IdPは、レジストリにアサーションを格納し、格納されているアサーションを参照する文字列(アーティファクト)とともに、SPにユーザーをリダイレクトします。SPは、SOAP/HTTP経由でIdPディレクトリに直接接続し、アーティファクトを提示することにより、アサーションを取得します。

  • HTTP POSTバインディングは、プロバイダ間で認証情報を伝達するのにHTMLフォームに依存します。たとえば、サービス・プロバイダはHTTPリダイレクトを使用してリクエストを送信します。アイデンティティ・プロバイダはHTTP POSTを使用してリクエストを転送します。IdPは、アサーションそのものを含むHTMLフォームによりユーザーをSPにリダイレクトすることもできます。

  • リバースSOAPバインディング(PAOS)は、Access ManagerがIdPとして構成されている場合にのみサポートされます。このフローで、クライアントは、SAML 2.0認証リクエストを含むSOAPリクエストをIdPに送信します。IdPはユーザーをローカルに認証し、SAML 2.0アサーションを含むSOAPレスポンスを返します。そして、クライアントは結果をリモートSPに提示します。

28.6.1.2 シングル・ログアウトのためのSAML 2.0バインディング

シングル・ログアウトは、プロバイダがそれぞれログアウト・イベントを通知し合う方法を定義します。このメッセージ交換により、ログアウトがSPまたはIdPで発生すると、すべてのセッションが終了します。

シングル・ログアウトにおけるデータ交換に対して次のプロファイルがサポートされています。

  • HTTPリダイレクト・プロファイルは、プロバイダ間のHTTPリダイレクトに依存します。たとえば、IdPは、ログアウト・リクエスト/レスポンス・メッセージを含むURLにより302リダイレクト・オペレーションを使用してSPにユーザーをリダイレクトします。このプロファイルは、シングル・ログアウトにおけるデータの送受信に対して使用できます。

  • HTTP POSTプロファイルは、ログアウト・リクエスト/レスポンス・メッセージを含むHTMLフォームを使用してIdPがユーザーをSPにリダイレクトするときに発生します。このプロファイルは、シングル・ログアウトにおけるデータの送受信に対して使用できます。

  • SOAPバインディング・プロファイルは、IdPをSPに直接接続できるようにして、ログアウト・リクエスト・メッセージを送信します。ログアウト時、IdPは、様々なSPに順にユーザーをリダイレクトします。SPは、ログアウト・レスポンス・メッセージで応答します。このプロファイルは、プロバイダ間での非同期SOAP over HTTPメッセージング・コールに依存し、シングル・ログアウトに関するデータを送信するためだけに使用できます。

28.6.1.3 SAML 2.0名前IDフォーマット

名前識別子マッピングは、異なるSPのネーム・スペースで認証されているプリンシパルに割り当てられた名前識別子をSPがどのように取得するかを定義します。

1つのSPに対して認証されているプリンシパルが2つ目のサイトへのアクセスを要求すると、プリンシパルのフェデレーションがSP間で存在していない場合でも、2つ目のSPがこのプロトコルを使用して、名前識別子を取得し、プリンシパルを最初のSPに伝達します。表28-1のSAML 2.0名前IDフォーマットは、IdPおよびSPモードの両方でサポートされています。

表28-1 サポートされているSAML 2.0名前IDフォーマット

名前IDフォーマット 説明

urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified

SP/IdPは適用可能なユーザー属性を使用して、名前ID値を入力または処理します。

urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress

SP/IdPは適用可能なユーザー属性を使用して、名前ID値を入力または処理します。

urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName

SP/IdPは適用可能なユーザー属性を使用して、名前ID値を入力または処理します。

urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName

SP/IdPは適用可能なユーザー属性を使用して、名前ID値を入力または処理します。

urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos

SP/IdPは適用可能なユーザー属性を使用して、名前ID値を入力または処理します。

urn:oasis:names:tc:SAML:2.0:nameid-format:persistent

SP/IdPは次のいずれかを行います。

  • ユーザー属性を使用して名前IDフォーマットを入力します。

  • ユーザー属性(DNなど)を使用して、値を設定します(すべての操作に対して同じ)。

  • ランダム値を使用して、フェデレーション・データ・ストアにその値を格納します(このモードのみフェデレーション・データ・ストアが必要です)。

urn:oasis:names:tc:SAML:2.0:nameid-format:transient

IdPがランダム値を生成します。

カスタム値

この名前IDフォーマットが使用される場合、OIF/IdPはユーザー属性を使用して名前ID値を入力します。

28.6.1.4 SAML 2.0データの保護

SAML 2.0仕様を使用して転送されるアイデンティティ・データのセキュリティについては、次のことが当てはまります。

  • すべての送信アサーションに署名される。

  • アサーションを含むすべての送信レスポンスには署名されない。

  • アサーションを含まないすべての送信リクエスト/レスポンスには署名される。

  • 署名証明書はメッセージに含まれない。

  • Identity Federation (IdPとして機能)は、SPパートナ・メタデータで指定されている場合以外、どのメッセージに対しても署名を必要としない。

  • 名前ID、属性およびアサーションは暗号化されない。

  • デフォルトXML暗号化アルゴリズムについての情報は、http://www.w3.org/TR/2002/REC-xmlenc-core-20021210/Overview.html#aes128-cbcに記載されています。

  • 署名のデフォルトのハッシュ生成アルゴリズムはSHA-1です。Identity FederationはSHA-256を使用するように構成できます。

28.6.1.5 SAML 2.0サービスの詳細

IdPとSP用SAML 2.0メタデータは単一のXMLドキュメントに含まれ、Oracle Access Managementコンソールを使用して取得できます。

メタデータは、次のURLのいずれかにアクセスすることによっても取得できます。

http://public-oam-host:public-oam-port/oamfed/idp/metadata
http://public-oam-host:public-oam-port/oamfed/sp/metadata

署名と暗号化で使用される証明書は、SAML 2.0メタデータ経由で発行されます。証明書は、キーストア設定で定義されているとおりキー/証明書エントリのキーIDを指定するサービスURLを使用することにより取得できます。(「フェデレーションのキーストア設定の定義」を参照してください。)たとえば、

http://public-oam-host:public-oam-port/oamfed/idp/cert?id=osts_signing

IdPプロファイルとSPプロファイルのプロバイダIDと発行者IDは同じで、Oracle Access Managementコンソールを使用して適用可能なプロバイダ・パートナ・プロファイルから取得できます。

表28-2に、Identity FederationがIdPとして機能するように構成されている場合に使用されるSAML 2.0 URLを示します。

表28-2 アイデンティティ・プロバイダとして機能するIdentity FederationのためのSAML 2.0 URL

説明 URL

HTTPリダイレクト・バインディング用シングル・サインオン・サービスURL

http://public-oam-host:public-oam-port/oamfed/idp/samlv20

HTTP POSTバインディング用シングル・サインオン・サービスURL

http://public-oam-host:public-oam-port/oamfed/idp/samlv20

SOAPバインディング用シングル・サインオン・サービスURL

http://public-oam-host:public-oam-port/oamfed/idp/soap

SOAPバインディング用アーティファクト解決サービスURL

http://public-oam-host:public-oam-port/oamfed/idp/soap

HTTPリダイレクト・バインディング用シングル・ログアウト・サービスURL

http://public-oam-host:public-oam-port/oamfed/idp/samlv20

HTTP POSTバインディング用シングル・ログアウト・サービスURL

http://public-oam-host:public-oam-port/oamfed/idp/samlv20

SOAPバインディング用属性権限サービスURL

http://public-oam-host:public-oam-port/oamfed/aa/soap

表28-3に、Identity FederationがSPとして機能するように構成されている場合に使用されるSAML 2.0 URLを示します。

表28-3 サービス・プロバイダとして機能するIdentity FederationのためのSAML 2.0 URL

説明 URL

アーティファクト・バインディング用アサーション・コンシューマ・サービスURL

http://public-oam-host:public-oam-port/oam/server/fed/sp/sso

HTTP POSTバインディング用アサーション・コンシューマ・サービスURL

http://public-oam-host:public-oam-port/oam/server/fed/sp/sso

HTTPリダイレクト・バインディング用シングル・ログアウト・サービスURL

http://public-oam-host:public-oam-port/oamfed/sp/samlv20

HTTP POSTバインディング用シングル・ログアウト・サービスURL

http://public-oam-host:public-oam-port/oamfed/sp/samlv20

28.6.2 SAML 1.1の使用

SAML 2.0とSAML 1.1で同じユース・ケースを解決できますが、方法が異なります。SAML 1.1リクエストの最も重要なタイプは問合せです。

SPは、安全なバック・チャネル上で(SOAPを使用して)IdPへの直接問合せを作成します。SAML 1.1プロトコル内部で、Identity Federationは次の各項で説明する機能をサポートします。

28.6.2.1 WebブラウザSSO用SAML 1.1プロファイル

SAML 1.1プロファイルは、認証情報を転送するSAMLアーティファクトとSPへのアサーションに依存します。

次のプロファイルがサポートされています。

  • ブラウザ/アーティファクト・プロファイルは、参照によって(ブラウザ経由でHTTPリダイレクトを使用して)SAMLアサーションをIdPからSPに渡します。このアーティファクトは、以降は、SPがSOAP over HTTP上のSAMLを使用して、IdPからのアサーションを取得するバックチャネル交換により逆参照されます。

  • ブラウザ/POSTプロファイルは、ブラウザ経由でHTTP POSTを使用してSSOアサーションをSPに渡します。この動作のことを、アイデンティティ・プロバイダがサービス・プロバイダにアサーションをプッシュするという言い方をします。

28.6.2.2 SAML 1.1ログアウト・プロファイル

SAML 1.1仕様ではログアウト・プロファイルを定義しないので、Identity Federationはユーザーのログアウトをリモート・パートナに通知できません。

28.6.2.3 SAML 1.1名前IDフォーマット

1つのSPに対して認証されているプリンシパルが2つ目のサイトへのアクセスを要求すると、プリンシパルのフェデレーションがSP間で存在していない場合でも、2つ目のSPが名前識別子を取得し、プリンシパルを最初のSPに伝達します。

表28-4のSAML 1.1名前IDフォーマットは、IdPおよびSPモードの両方でサポートされています。

表28-4 サポートされているSAML 1.1名前IDフォーマット

名前IDフォーマット 説明

urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified

SP/IdPは適用可能なユーザー属性を使用して、名前ID値を入力または処理します。

urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress

SP/IdPは適用可能なユーザー属性を使用して、名前ID値を入力または処理します。

urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName

SP/IdPは適用可能なユーザー属性を使用して、名前ID値を入力または処理します。

urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName

SP/IdPは適用可能なユーザー属性を使用して、名前ID値を入力または処理します。

urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos

SP/IdPは適用可能なユーザー属性を使用して、名前ID値を入力または処理します。

カスタム値

この名前IDフォーマットが使用される場合、OIF/IdPはユーザー属性を使用して名前ID値を入力します。

28.6.2.4 SAML 1.1データ・セキュリティについて

SAML 1.1仕様を使用して転送されるアイデンティティ・データのセキュリティについては、次のことが当てはまります。

  • すべての送信アサーションに署名される。

  • アサーションを含むすべての送信レスポンスには署名されない。

  • 署名証明書はメッセージに含まれない。

  • Identity Federation (IdPとして機能)は、どのメッセージに対しても署名を必要としない。

  • 署名のデフォルトのハッシュ生成アルゴリズムはSHA-1です。Identity FederationはSHA-256を使用するように構成できます。

28.6.2.5 SAML 1.1サービスの詳細

署名および暗号化用に使用される証明書は、キーストア設定で定義されているとおりキー/証明書エントリのキーIDを指定するサービスURLを使用することにより取得できます。

詳細は、「フェデレーションのキーストア設定の定義」を参照してください。

たとえば、

http://public-oam-host:public-oam-port/oamfed/idp/cert?id=osts_signing

IdPプロファイルとSPプロファイルのプロバイダIDと発行者IDは同じで、Oracle Access Managementコンソールを使用して適用可能なプロバイダ・パートナ・プロファイルから取得できます。

表28-5に、Identity FederationがIdPとして機能するように構成されている場合に使用されるSAML 1.1 URLを示します。

表28-5 アイデンティティ・プロバイダとして機能するIdentity FederationのためのSAML 1.1 URL

説明 URL

シングル・サインオン・サービスURL

http://public-oam-host:public-oam-port/oamfed/idp/samlv11sso

アーティファクト解決サービスURL

http://public-oam-host:public-oam-port/oamfed/idp/soapv11

表28-6に、Identity FederationがSPとして機能するように構成されている場合に使用されるSAML 1.1 URLを示します。

表28-6 サービス・プロバイダとして機能するIdentity FederationのためのSAML 1.1 URL

説明 URL

アサーション・コンシューマ・サービスURL

http://public-oam-host:public-oam-port/oam/server/fed/sp/sso

28.6.3 OpenID 2.0の使用

OpenID 2.0では、ユーザーは、優先OpenID IdPでアカウントを作成し、OpenID認証を受けるすべてのWebサイトにサインオンするためのベースとしてそのアカウントを使用できます。

アイデンティティ・データは、OpenID識別子(エンドユーザーによって選択されているURLまたはXRI)の交換によって伝達され、IdPはOpenID認証を提供します。OpenIDプロトコル内部で、Identity Federationは次の各項で説明する機能をサポートします。

28.6.3.1 OpenID 2.0認証/SSO

OpenID 2.0では、ユーザーは特別なOpenID URLを使用して新しいWebサイトにサインインできます。たとえば、myblog.comにブログを持っているユーザーが、yourname.myblog.comというOpenID URLを作成するなどします。OpenIDログインを受け入れる2つ目のWebサイトに移動して、OpenIDボタンをクリックする場合、このURLを入力し、クリックしてログインします。2つ目のSPは、このOpenID識別子でOpenID IdP URLを検出します。OpenID IdPが認証ユーザーをSPにリダイレクトする場合、ここには操作結果、ユーザーの名前IDおよび属性(オプション)を含むOpenIDアサーションが含まれます。

28.6.3.2 OpenID 2.0ログアウト

OpenID 2.0仕様はログアウト・プロファイルを定義しないので、Identity Federationではユーザーのログアウトをリモート・パートナに通知できません。

28.6.3.3 OpenID 2.0名前IDフォーマット

OpenIDは名前IDをランダム文字列になるように定義するので、Identity Federationは、名前IDの値として次のいずれかを使用します。

  • ハッシュ・ユーザー属性(DNなど)

  • フェデレーション・データ・ストアに格納される、生成されたランダム値。このモードでは、フェデレーション・データ・ストアの使用が必要です。

28.6.3.4 OpenID 2.0データ・セキュリティについて

OpenID 2.0仕様を使用して転送されるアイデンティティ・データのセキュリティについては、次のことが当てはまります。

  • すべての送信アサーションに署名される。

  • デフォルトのアソシエーション・アルゴリズムはHMAC SHA-1です。

  • デフォルトのセッション・アグリーメント・アルゴリズムはDiffie-Hellmann SHA-1です。

28.6.3.5 OpenID 2.0拡張機能

OpenIDは拡張仕様です。統合Identity Federationを使用する際、次の拡張機能を使用できます。

  • Attribute Exchange (AX): 有効である場合、SPは、属性をOpenIDアサーション・レスポンスに含めるよう要求できます。IdPは、要求された属性、またはそのように構成された属性をレスポンスに含めることができます。(デフォルト: 有効)

  • Provider Authentication Policy Extension (PAPE): 有効である場合、高度な認証方法を定義および指定できます。たとえば、フィッシング対応認証方法、マルチファクタ認証などがあります。(デフォルト: 無効)

  • GSAレベル1: このサーバーがhttp://www.idmanagement.gov/schema/2009/05/icam/openid-trust-level1.pdfポリシーに準拠しているかどうかを示すOpenIDアサーションの識別子。これが有効で、PAPEが有効である場合、OIFは、OpenIDレスポンスにこのポリシーを含めます。(デフォルト: 無効)

  • Level Of Assurance (LOA): このサーバーがhttp://csrc.nist.gov/publications/nistpubs/800-63/SP800-63V1_0_2.pdfポリシーに準拠しているかどうかを示すOpenIDアサーションの識別子。有効である場合、OIF/IdPは、Level of AssuranceとschemeID間のマッピングを使用して、OpenIDレスポンス内でLOAに対して使用する値を判断します(詳細は2.5.2を参照)。(デフォルト: 無効)

  • No Private Identifier Information (NoPII): このサーバーがhttp://www.idmanagement.gov/schema/2009/05/icam/no-pii.pdfポリシーに準拠しているかどうかを示すOpenIDアサーションの識別子。有効である場合、OIFはOpenIDアサーションに属性を含めないことに注意してください。

  • Persistent Personal Identifier (PPID): このサーバーがhttp://schemas.xmlsoap.org/ws/2005/05/identity/claims/privatepersonalidentifierポリシーに準拠しているかどうかを示すOpenIDアサーションの識別子。これが有効で、PAPEが有効である場合、OIFは、OpenIDレスポンスにこのポリシーを含めます。(デフォルト: 無効)

  • Registration (SReg): OpenIDアサーション内の属性のための拡張機能。有効である場合、SPは、レスポンスに属性を含めるように要求できます。IdPは、要求された属性またはレスポンスに含めるように構成されている属性を含めることができます。(デフォルト: 無効)

  • UI Extension (UIExt): UI用の拡張機能。OIF/IdPにおけるこの拡張機能のサポートは、XRDSメタデータでの通知に限定されます。(デフォルト: 無効)

28.6.3.6 OpenID 2.0サービスの詳細

次のURLはOpenID 2.0 SPコンポーネントのレルムです。

http://public-oam-host:public-oam-port

表28-7は、Identity FederationがIdPとして機能するように構成されている場合に使用されるOpenID 2.0 URLを示しています。

表28-7 アイデンティティ・プロバイダとして機能するIdentity FederationのためのOpenID 2.0 URL

説明 URL

シングル・サインオン・サービスURL

http://public-oam-host:public-oam-port/oamfed/idp/openidv20

検出サービスURL

http://public-oam-host:public-oam-port/oamfed/idp/openidv20

表28-8に、Identity FederationがSPとして機能するように構成されている場合に使用されるOpenID 2.0 URLを示します。

表28-8 サービス・プロバイダとして機能するIdentity FederationのためのOpenID 2.0 URL

説明 URL

シングル・サインオン・サービスURL

http://public-oam-host:public-oam-port/oam/server/fed/sp/sso

検出サービスURL

http://public-oam-host:public-oam-port/oamfed/sp/openidv20

レルムURL

http://public-oam-host:public-oam-port

28.6.4 WS-Federation 1.1の使用

Access Managerでは、WS-Federation 1.1プロトコルの機能がサポートされるようになりました。

新しいWLSTコマンドaddWSFed11IdPFederationPartnerおよびaddWSFed11SPFederationPartnerを使用して、WS-Federation 1.1のパートナを作成できます。パートナの作成後、既存のWLST Identity Federationコマンドを使用してプロファイルを構成できます。詳細は、Oracle Fusion Middleware WebLogic Scripting Tool Identity and Access Managementコマンド・リファレンスを参照してください。

ノート:

WS-Federation 1.1パートナは、Oracle Access Managementコンソールを使用して部分的に管理できます。

28.7 Identity Federationの管理

Access Managerと統合されているIdentity Federationは、Oracle Access ManagementコンソールとOracle WebLogic Scripting Tool (WLST)コマンドを使用して、各種構成の組合せとともに管理できます。

Oracle Access Managementコンソールを使用すると、Identity Federationサービスを有効にしたり、IdPおよびSPのパートナ・プロファイルを管理したり、フェデレーテッド認証スキームおよびポリシーに対する作業を実行できます。WLSTユーティリティを使用すると、追加のサーバーおよびパートナの構成プロパティを管理できます。

ノート:

すべてのWLSTコマンド機能に対応する機能がOracle Access Managementコンソールにあるわけではなく、また、すべてのコンソール機能に対応する機能がコマンド行に実装されているわけではありません。

管理者はOracle Access Managementコンソールを使用して、フェデレーション・サービスとパートナに関連する構成を管理できます。表28-9に、Oracle Access Managementコンソールを使用してIdentity Federationについて構成できる情報の種類をまとめます。

表28-9 Identity Federation設定の構成

構成対象 説明

フェデレーション管理者

フェデレーテッド・パートナおよび関連する構成を管理できる管理者。

フェデレーション・サービス

Access ManagerのIdentity Federationサービスを有効または無効にします。「Identity Federationの有効化」を参照してください。

フェデレーション設定

基本的なIdentity Federationサービス構成プロパティの管理。「Identity Federationの設定管理」を参照してください。

フェデレーションで使用するプロバイダ

IdPパートナはIdentity FederationをSPとして管理するコンテキスト内において管理されます。反対に、SPパートナは、Identity FederationをIdPとして管理するコンテキスト内において管理されます。「サービス・プロバイダとしてのIdentity Federationの管理」または「アイデンティティ・プロバイダとしてのIdentity Federationの管理」を参照してください。

フェデレーションの認証スキームおよび認証モジュール

フェデレーションの認証スキームの管理。「Identity Federationの認証スキームおよび認証モジュールの使用」を参照してください。

フェデレーションで使用するポリシー

フェデレーション・パートナに使用するポリシーの管理。「Identity Federationで使用するAccess Managerのポリシーの管理」を参照してください。

Oracle Access Managementコンソールを使用してアイデンティティ・フェデレーションを実装する際に必要なタスクの概要を表28-10に示します。

表28-10 Identity Federationの実装

タスク 参照先

Identity Federationサービスを有効にします。

Identity Federationの有効化

フェデレーション設定を構成します。

フェデレーションの一般設定の管理

IdPパートナまたはSPパートナを識別し、それらに対する属性を構成します。

サービス・プロバイダとしてのIdentity Federationの管理

認証または認可ポリシーを構成します。

フェデレーションのスキームおよびポリシーの管理

このポリシーでリソースを保護します。

リソースを保護してSSOを有効化するポリシーの管理

28.8 Identity Federationの有効化

Identity Federationは、Oracle Access Managementにおける認証モジュールなので、Access ManagerサービスとIdentity Federationの両方を有効にしておく必要があります。

図28-1は、Access ManagerサービスとIdentity Federationが有効になっているOracle Access Managementコンソールの「使用可能なサービス」ページを示しています。このページを使用して、Identity FederationとAccess Managerサービスを有効(または無効)にします。

ノート:

有効であれば、IdP、SP、属性認証局、属性リクエスタなどのフェデレーション機能を個々に有効または無効にできます。『Oracle Fusion Middleware WebLogic Scripting Tool Identity and Access Managementコマンド・リファレンス』の説明に従ってconfigureFederationService()コマンドを使用します。

図28-1 「使用可能なサービス」ページ

図28-1の説明が続きます
「図28-1 「使用可能なサービス」ページ」の説明

Access ManagerでIdentity Federationサービスを管理する手順

  1. Oracle Access Managementコンソールにログインします。
         https://hostname:port/oamconsole/
    
  2. 「ようこそ」ページの「構成」で、「使用可能なサービス」をクリックします。
  3. Identity Federationの有効化: 「Identity Federation」の横にある「有効化」をクリックします(または、「ステータス」に緑のチェック・マークが表示されていることを確認します)。

    確認ウィンドウが表示されます。

  4. 「OK」をクリックします。
  5. Access Managerの有効化: 「Access Manager」の横にある「有効化」をクリックします(または、「ステータス」に緑のチェック・マークが表示されていることを確認します)。

    確認ウィンドウが表示されます。

  6. 「OK」をクリックします。