2章 使用されている用語 (Terms Used)

 

以下の用語は、本仕様書のなかで広く使われている。

 

 

2.1               基本用語 (Basic Terms)

 

 

2.1.1 ユニフォーム リソース ロケータ (URL: Uniform Resource Locators)

 

ユニフォーム リソース ロケータ (URL)は、ネットワークを介して取得可能な資源を表現するコンパクトな文字列である。URLで表現されたある資源がアクセスされたとき、そのリソース上では種種の操作が実行され得る。1 URLユニフォーム リソース識別子(URI: Uniform resource Identifier)のひとつの形式である。URLは一般に次の形式をとる:

<プロトコル>://<サーバ名>[:ポート]/<URLパス>[<クエリ文字列>]

 

例えば:

http://java.sun.com/products/servlet/index.html

https://javashop.sun.com/purchase

HTTPベースのURLにおいては、’/’ 文字はURLURLパスの中のパスの階層的構造を区切るために予約されている。サーバは階層構造の意味を知る責任を持つ。URLパスと付与済みファイル システムのパスとは対応は無い。

 

1: RFC 1738参照

 

 

2.1.2 サーブレット定義 (Servlet Definition)

 

サーブレット定義とはServletインターフェイスを実装した完全な形式のクラス名(FQCN: Fully Qualified Class Name)に連結した固有の名前である。初期化パラメタのセットはサーブレット定義に連結し得る。

 

 

2.1.3 サーブレット マッピング (Servlet Mapping)

 

サーブレット マッピングとは、URLパス パタンでサーブレット コンテナにより連結されたサーブレット定義をいう。そのパス パタンへの全ての要求はそのサーブレット定義で連結されたサーブレットにより処理される。

 

 

2.1.4 ウェブ アプリケーション (Web Application)

 

ウェブ アプリケーションは、サーブレット、JavaServerページ2HTMLドキュメント、およびその他の資源の収集である。その他の資源にはイメージ ファイル、圧縮したアーカイブ、および他のデータなどが含まれ得る。ウェブ アプリケーションはひとつのアーカイブにパックしたり、あるいはオープンなディレクトリ構造のなかで存在したりしうる。

 

全ての互換性を持つサーブレット コンテナは、ウェブ アプリケーションを受理し、その内容をコンテナのランタイムに組み入れなければならない。このことは、そのアプリケーションを直接ウェブアプリケーションアーカイブから実行させることを意味したり、あるいは、ウェブアプリケーションの内容をそのコンテナの為のしかるべき場所に移動させることを意味する。

 

2: http://java.sun.com/products/jspJavaServerページの仕様書を参照のこと

 

 

2.1.5 ウェブ アプリケーション アーカイブ (Web Application Archive)

 

ウェブ アプリケーション アーカイブとは、ウェブ アプリケーションの全てのコンポネントを含む単一のファイルである。このアーカイブ ファイルは、如何なるあるいは全てのウェブ コンポネントが登録できる標準のJARツールを使って作成される。

 

ウェブ アプリケーション アーカイブ ファイルは.war拡張子で識別される。.jar の替りに新しい拡張子が使われているのは、この.jar拡張子がクラス ファイルのセットを含み、そのクラス パスに配置されるか、アプリケーションを開始させるのにGUIを使ってダブルクリックされるために予約されているからである。ウェブ アプリケーション アーカイブはそのような使い方に適していないので新しい拡張子がふさわしかったのである。

 

 

2.2               ロール (Roles)

 

サーブレットベースのアプリケーションの開発、実装、実行の過程で種々の組織が持つ行為と責任を規定する助けとする意図で以下の役割を定義したものである。

 

 

2.2.1 アプリケーション 開発者 (Application developer)

 

アプリケーション開発者とは、ウェブベースのアプリケーションの製作者である。アプリケーション開発者の成果物はそのウェブアプリケーションのサーブレットクラス、JSPページ、HTMLページ、および支援ライブラリとファイル(イメージや圧縮アーカイブファイルなど)のセットである。アプリケーション開発者は、一般にアプリケーション領域でのエキスパートである。同時性(コンカレンシー)を含むプログラミングにあたってはこの開発者は、サーブレットの環境とその結果を承知しており、それに基づいてウェブ アプリケーションを作ることが要求される。

 

 

2.2.2 アプリケーション アセンブラ (Application Assembler)

 

アプリケーション アセンブラは開発者の仕事を引継ぎ、それが実装可能なものとする。アプリケーション アセンブラへの入力は、そのウェブ アプリケーションのためのサーブレットクラス、JSPページ、HTMLページおよび支援ライブラリとファイルである。アプリケーション アセンブラの成果物はウェブ アプリケーション アーカイブまたはオープンなディレクトリ構造の中のウェブ アプリケーションである。

 

 

2.2.3 デプロイヤ (Deployer)

 

デプロイヤ(導入者)アプリケーション開発者が提供する一つあるいは複数のアーカイブファイルあるいはディレクトリ構造をあるひとつの実行環境に導入する。実行環境にはそのサーブレットコンテナとウェブサーバが含まれる。デプロイヤは開発者が宣言したすべての外部との依存性を解決しなければならない。その役割を実行するには、デプロイヤはサーブレットコンテナが提供するツールを使用する。

 

 

2.2.4 システム管理者 (System Administrator)

 

システム管理者はサーブレットコンテナとウェブサーバの設定と管理の責任を持つ。この管理者はまた、ランタイムにおける導入済みウェブ アプリケーションの健全性を監視する責も持つ。本仕様書ではシステムの管理(マネージメント)と監督(アドミニストレーション)の係わり合いについては定めていない。管理者は自分のタスクを達成するのに、コンテナのベンダやサーバのベンダが提供するランタイムの監視と管理ツールを使用する。

 

 

2.2.5 サーブレット コンテナ提供者 (Servlet Container Provider)

 

サーブレット コンテナ提供者はランタイムの環境、即ちサーブレットコンテナと多分ウェブサーバとをも提供する責任を持つ。この環境の中でウェブアプリケーションと、ウェブアプリケーションを導入するのに必要なツールが走る。

 

コンテナ提供者が必要な専門性は、HTTPレベルのプログラミングである。本仕様書ではウェブサーバとサーブレット コンテナのインターフェイスに関しては規定はしていないので、コンテナとサーバの必要とされている機能の実装の分割は、コンテナ提供者に任されている。

 

 

2.3 セキュリティ事項 (Security Terms)

 

 

2.3.1 プリンシパル (Principal)

 

プリンシパルは、認証プロトコルで認証できるエンティティである。プリンシパルはプリンシパル名(principal name)で識別され、認証データ(authentication data)を使って認証される。プリンシパル名と認証データの内容とフォーマットは認証プロトコルに依存する。

 

 

2.3.2 セキュリティ ポリシー ドメイン (Security Policy Domain)

 

セキュリティ ポリシー ドメインはセキュリティ サービスの管理者によってセキュリティ ポリシーが定義され施行される範囲をいう。セキュリティ ポリシー ドメインはまたレルムとも呼ばれる。

 

 

2.3.3 セキュリティ テクノロジ ドメイン (Security Technology Domain)

 

セキュリ ティテクノロジ ドメインは、カーベロス(Kerberos)のような同じセキュリティのメカニズムがセキュリティのポリシーを実行するのに使われている範囲をいう。単一のテクノロジ ドメインの中に複数のポリシー ドメインが存在し得る。

 

 

2.3.4   ロール (Role)

 

ロールとはアプリケーションにおいて開発者が使う抽象化された用語である。セキュリティポリシー ドメイン内にてデプロイヤがユーザあるいはユーザのグループにマッピングできるものである。