ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Portal管理者ガイド
11g リリース1(11.1.1)
B61385-02
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次
索引へ移動
索引

前
 
次
 

C JavaServer PagesとOracle Portalとの統合

Oracle Portalには、様々な種類のWebページを作成する機能があります。この機能をJavaServer Pages(JSP)で補足することができます。

この付録では、承認されたJSPのみへのアクセスを許可し、JSPからポートレット・コンテンツへの認可されていないアクセスを防ぐことにより、Oracle Portalを保護する方法を説明します。また、ログインを必要とする保護された外部JSPにアクセスを許可するために必要な手順も説明します。

この付録の内容:

C.1 JavaServer Pages構成ファイルの使用

ほとんどすべてのJSPは、タグ・ライブラリを使用してOracle Portalのポートレット・コンテンツをリクエストできるので、承認されたJSPのみがアクセス可能であることが保証されるようなセキュアな方法が必要です。これは、次の2つのメカニズムで制御できます。

構成ファイルによって、Oracle Portalインスタンスとインスタンス内のページ・グループが識別され、外部JSPのそれらへアクセスが許可されます。

構成ファイル固有のコーディング要件については、第C.1.1項「JavaServer Pages構成ファイルの内容」を参照してください。

完成した構成ファイルは、Oracle Portalに識別される必要があります。手順の説明は、第C.1.3項「JavaServer Pages構成ファイルの場所」を参照してください。

この項の内容:

C.1.1 JavaServer Pages構成ファイルの内容

必要なタグは次のとおりです。

  • <jps>

  • <portal>

  • <database>

  • <url>

  • <Cookie>

  • <pageGroups>

  • <pageGroup>

C.1.1.1 <jps>タグ

<jps>タグは、外部JSPがアクセスできるOracle Portalインスタンスのリストを提供するためのコンテナ・タグです。

開始タグ

<jps version="1.0">

現行のOracle Portalリリース用にバージョン番号を1.0に設定する必要があります。

終了タグ

</jps>

C.1.1.2 <portal>タグ

<portal>タグで、個々のOracle Portalインスタンスを記述します。

開始タグ

<portal name="MyPortal" default="true">

終了タグ

</portal>

表C-1 <portal>タグの属性

属性

name

Oracle Portalインスタンスに付ける記述名。名前は、構成ファイル内で一意である必要があります。

デフォルト

usePortalタグでポータル名を指定しない場合に、このポータルがデフォルトのインスタンスかどうかを示すtrueまたはfalseフラグ。値を指定しない場合は、falseに設定されます。


デフォルトのポータルは、構成ファイルごとに1つのみです。

C.1.1.3 <database>タグ

<database>タグで、指定されたOracle Portalインスタンスについてのデータベース接続情報を提供します。たとえば、次のようになります。

<database data-source="jdbc/MyPortal"/>

data-source属性値はデータ・ソースの名前であり、J2EE_HOME/configディレクトリ内のdata-sources.xmlファイルに指定されている必要があります。

次に、data-source定義の例を示します。

<data-source
   class="com.evermind.sql.DriverManagerDataSource"
   name="MyPortal"
   location="jdbc/MyPortal"
   xa-location="jdbc/xa/MyPortal"
   ejb-location="jdbc/MyPortal"
   connection-driver="oracle.jdbc.driver.OracleDriver"
   username="portal_app"
   password="portal_app"
   url="jdbc:oracle:thin:@xyz.oracle.com:1521:orcl"
   inactivity-timeout="30"
/>

usernameおよびpassword属性は、Oracle Portalアプリケーション・スキーマのユーザー名とパスワードに設定する必要があります。

C.1.1.4 <url>タグ

<url>タグで、Oracle Portalインスタンスへの接続情報を提供します。たとえば、次のようになります。

<url protocol="http" host="defg.oracle.com" port="7500" path="portal/pls/portal"/>

表C-2 <url>タグの属性

属性

protocol

Oracle Portalインスタンスへの接続に使用されるプロトコルの名前。現在、HTTPおよびHTTPSプロトコルのみがサポートされています。protocol属性を指定しない場合のデフォルトはhttpです。

host

Oracle Portalの中間層のコンピュータ名。

ポート

ポート番号。portを指定しない場合のデフォルトは80です。

path

今回のリリースでは、pathを/portal/pls/<PORTAL-DAD-NAME>に設定する必要があります。


C.1.1.5 <cookie>タグ

<cookie>タグで、Oracle PortalのCookieを記述します。たとえば、次のようになります。

<cookie name="portal" maxAge="-1" path="/" domain=".oracle.com"/>

表C-3 <cookie>タグの属性

属性

name

Cookieの名前。これは、Oracle Portalインスタンスcookie名と同じにする必要があります。nameは、cookieタグにとって必須の属性です。

maxAge

Cookieの最長保存期間。秒単位で指定します。ブラウザがシャットダウンされるまでCookieの保存を希望する場合は、-1を指定します。maxAgeは、cookieタグにとって必須の属性です。

path

ブラウザがこのCookieを返すサーバーのパス。pathは、cookieタグにとって必須の属性です。

domain

この属性は、SSOポートレットのCookie構成に変更が行われた場合にのみ指定する必要があります。SSOのドキュメントを参照してください。


C.1.1.6 <pageGroups>タグ

<pageGroups>タグで、pageGroupタグのコンテナを形成します。このタグには属性がありません。

開始タグ

<pageGroups>

終了タグ

</pageGroups>

C.1.1.7 <pageGroup>タグ

<pageGroup>タグで、それぞれのページ・グループのプロパティを記述します。たとえば、次のようになります。

<pageGroup name="JPSDemo" key="welcome" default="true"/>

表C-4 <pageGroup>タグの属性

属性

name

ページ・グループ名。この名前は、ページ・グループがOracle Portal内で作成されたときに付けられた名前にする必要があります。

key

ページ・グループのキー。この値は、Oracle Portal内でページ・グループに割り当てられたアクセス・キーの値と一致している必要があります。(ここで識別されるページ・グループは、JSPアクセスに対応できる必要があります。)

デフォルト

このページ・グループがこのOracle Portalインスタンス内のデフォルトのページ・グループかどうかを示すフラグ。trueまたはfalseに設定されます。ページ・グループ名が指定されない場合、デフォルトのページ・グループはusePortalタグで使用されているものになります。このpageGroupタグのdefault属性に値が指定されない場合は、falseに設定されます。


デフォルトのページ・グループは、ポータル・インスタンスごとに1つのみです。

C.1.2 JavaServer Pages構成ファイルの例

次に、JSP構成ファイルの例を示します。

例C-1 JavaServer Pages構成ファイルの例

<jps version="1.0">
   <portal name="MyPortal" default="true">
      <database data-source="jdbc/MyPortal"/>
      <url host="xyz.oracle.com" port="7500" path="/portal/pls/portal"/>
      <cookie name="portal" maxAge="-1" path="/" />
      <pageGroups>
         <pageGroup name="JPSDemo"  key="welcome" default="true"/>
         <pageGroup name="JPSDemo2" key="welcome" default="false"/>
      </pageGroups>
   </portal>
   <portal name="AnotherPortal">
      <database data-source="jdbc/AnotherPortal"/>
      <url protocol="http" host="abc.oracle.com" port="8888"
         path="/portal/pls/portal90"/>
      <cookie name="portal90" maxAge="-1" path="/" />
      <pageGroups>
         <pageGroup name="JPSDemo"  key="welcome"/>
         <pageGroup name="JPSDemo1"  key="welcome1"/>
         <pageGroup name="JPSDemo2"  key="welcome2"/>
         <pageGroup name="JPSDemo3"  key="welcome3"/>
         <pageGroup name="JPSDemo4"  key="welcome4"/>
      </pageGroups>
   </portal>
</jps>

C.1.3 JavaServer Pages構成ファイルの場所

JavaServer Pages構成ファイルは任意の名前とすることができ、ファイル・システムのどの場所にも置くことができます。

この場所は、web.xmlファイルのコンテキスト・パラメータを使用して指定します。このファイルはDOMAIN_HOME\servers\WLS_PORTAL\tmp\_WL_user\portal\dir_name\war\WEB-INFディレクトリにあります。

web.xmlファイル内のコンテキスト・パラメータは、次のとおりです。

<context-param>
   <param-name>oracle.webdb.service.ConfigLoader</param-name>
   <param-value>/WEB-INF/wwjps.xml</param-value>
      <description>This parameter specifies the location of the JPS
         configuration file</description>
</context-param>

C.1.4 外部JavaServer Pagesのログイン

外部JSPは、そのログイン要件によって次のように分類されます。

  • ログインが不要な、またはOracle Portalのログイン・リンクを通じてユーザーがログインするパブリックJSP

  • ログインが必要な保護されたJSP

保護された外部JSPには追加の設定要件があります。そのような要件については、次の項で説明します。

C.2 外部通信のためのJAZNファイルの設定

次の手順は、保護された外部JSPに対してのみ必要です。つまり、ログインが必要な外部JSPに対する手順です。

外部JSP内でポータルへのログインが必要な場合は、次のタグ構文を使用する必要があります。

<portal:usePortal id="AnyPortal" pagegroup="AnyPageGroup" login="true" />

このJSPを実行すると、まだログインしていない場合は、OracleAS Single Sign-Onへリダイレクトされます。これを正常に機能させるために、次の項を参照してください。

C.2.1 mod_ossoの設定

デフォルトでは、使用中のOracle HTTP Serverは、OracleAS Single Sign-Onに登録されています。変更が発生したために再登録が必要な場合は、『Oracle Application Server Single Sign-On管理者ガイド』を参照してください。

C.2.2 JAZNのLDAPによる設定

JAZNとは、Java Authentication and Authorization Service(JAAS)プロバイダの内部名です。JAASは、アプリケーションがユーザーのアクセス制御を認証および適用できるようにするJavaパッケージです。Oracle Portal内でのJAZNの使用は、外部JSPの認証に制限されています。

JAZNがLDAPと連携していることを確認します。(JAZNに提供されるデモを使用することができます。)

次の追加手順を実行します。

  • DOMAIN_HOME\servers\WLS_PORTAL\tmp\_WL_user\portalTools_11.1.1.1.0\124k5v\META-INF\orion-application.xmlで、次の行を追加します。

    <jazn provider="LDAP" location="ldap://<OIDHOST>:389" default-realm="oracle">
    <jazn-web-app auth-method="SSO" />
    </jazn>
    

ポート番号389は、LDAPサーバーのデフォルトのポートです。ただし、他のどのようなポートでも割り当てることができます。<host>および<port>の情報を入手するためには、Oracle Internet Directory管理者に連絡してください。


関連項目:

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