Servlet¶
各設定ファイルを intra-mart Accel Platform が定義する場所に配置してください。
- メッセージプロパティ(*.properties)ファイル
WEB-INF/conf/message 配下
画面に対し、以下のどちらかの対応を行ってください。
- IFRAMEで表示する場合は、移行(互換)向け対応の対応を行ってください。
- 通常の画面として表示する場合は、intra-mart Accel Platform対応の対応を行ってください。
ロジックに対し、API対応を行ってください。
- 削除されたAPIを利用していた場合は、他のAPIに差し替えるなどの対応を行ってください。
コラム
削除されたAPIを利用していなければ、対応を行う必要はありません。
認可を設定してください。
注意
認可の設定を行わなかった場合、アクセス権チェックが行われず、すべてのユーザがアクセス可能です。Servlet を利用したアプリケーションに対し、認可機能を適用するには、以下の設定が必要です。
- マッピングしているURLに対して、ルーティング設定を追加する
- 認可リソースを登録し認可設定を行う
例えば、以下の Servlet に対して追加するルーティング設定について説明します。
マッピング先のURL /foo/bar
認可リソースURIを決定します。ここでは、以下を設定します。
service://foo/bar
Servlet ルーティング設定(routing-servlet-config)を作成します。
<?xml version="1.0" encoding="UTF-8"?> <routing-servlet-config xmlns="http://www.intra-mart.jp/router/routing-servlet-config" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.intra-mart.jp/router/routing-servlet-config routing-servlet-config.xsd "> <servlet-mapping path="/foo/bar" servlet="/foo/bar"> <authz uri="service://foo/bar" action="execute" /> </servlet-mapping> </routing-service-config>注意
- 認可によるアクセス制御について
Servlet にアクセスするためのURLに対して認可設定を行う場合は、Servlet ルーティング設定(routing-servlet-config)の <servlet-mapping> タグを適切に設定してください。具体的には、以下の3つで同じパスを指定したルーティング設定を追加する必要があります。
- web.xml に定義されたサーブレットに対するURL(servlet-mappingで定義されたURLパターン)
- Servlet ルーティング設定(routing-servlet-config)の <servlet-mapping> タグの「path」属性
- Servlet ルーティング設定(routing-servlet-config)の <servlet-mapping> タグの「servlet」属性
このルーティング設定がない場合、認可を経由せずにサーブレットへ直接アクセスが可能であり、脆弱性の原因です。- ワイルドカード指定について
Servlet ルーティング設定(routing-servlet-config)の「path」「servlet」属性には、 * (アスタリスク)等のワイルドカードは指定できません。web.xml で定義された Servlet に対するURLがワイルドカードで指定されている場合、パターンを網羅したすべてのURLを、Servlet ルーティング設定(routing-servlet-config)の <servlet-mapping> に対して設定してください。認可設定については、「スクリプト開発モデル プログラミングガイド の 認可 」の「画面へアクセスするための認可設定方法」章を参照してください。スクリプト開発モデルの認可設定方法が記載されていますが、手順は同じです。コラム
Servlet ルーティング設定(routing-servlet-config)については、「設定ファイルリファレンス の サーブレットルーティング設定 」を参照してください。認可の詳細については、「認可仕様書 」を参照してください。