クラスCodeSource
java.lang.Object
java.security.CodeSource
- すべての実装されたインタフェース:
Serializable
public class CodeSource extends Object implements Serializable
このクラスはコード・ベースの概念を拡張し、位置(URL)に加えて、その位置から発生する署名付きコードの検証に使用した証明書チェーンもカプセル化します。
- 導入されたバージョン:
- 1.2
- 関連項目:
-
コンストラクタのサマリー
コンストラクタコンストラクタ説明CodeSource(URL url, Certificate[] certs) CodeSourceを構築し、指定されたロケーションおよび証明書のセットに関連付けます。CodeSource(URL url, CodeSigner[] signers) CodeSourceを構築し、指定されたロケーションおよびコード署名者のセットに関連付けます。 -
メソッドのサマリー
修飾子と型メソッド説明boolean指定されたオブジェクトとこのオブジェクトが等価であるかどうかをテストします。final Certificate[]このCodeSourceに関連付けられた証明書を返します。final CodeSigner[]このCodeSourceに関連付けられたコード・シグナを返します。final URLこのCodeSourceに関連付けられたロケーションを返します。inthashCode()このオブジェクトのハッシュ・コード値を返します。booleanimplies(CodeSource codesource) このCodeSourceオブジェクト"意味"が指定されたCodeSourceの場合、trueを返します。toString()このCodeSourceを記述する文字列を返し、URLおよび証明書を示します。
-
コンストラクタの詳細
-
CodeSource
public CodeSource(URL url, Certificate[] certs) CodeSourceを構築し、指定されたロケーションおよび証明書のセットに関連付けます。- パラメータ:
url- 位置(URL)。 それはnullかもしれません。certs- 証明書。 それはnullかもしれません。 この配列の内容は、後続の変更に影響されないようにコピーされる。
-
CodeSource
public CodeSource(URL url, CodeSigner[] signers) CodeSourceを構築し、指定されたロケーションおよびコード署名者のセットに関連付けます。- パラメータ:
url- 位置(URL)。 それはnullかもしれません。signers- コード署名者。 それはnullかもしれません。 この配列の内容は、後続の変更に影響されないようにコピーされる。- 導入されたバージョン:
- 1.5
-
-
メソッドの詳細
-
hashCode
-
equals
-
getLocation
public final URL getLocation()このCodeSourceに関連付けられたロケーションを返します。- 戻り値:
- (URL)のロケーション、またはURLが構築中に指定されなかった場合は
null。
-
getCertificates
public final Certificate[] getCertificates()このCodeSourceに関連付けられた証明書を返します。この
CodeSourceオブジェクトがCodeSource(URL url, CodeSigner[] signers)コンストラクタを使用して作成された場合、証明書チェーンが抽出され、Certificateオブジェクトの配列が作成されます。 各署名者証明書のあとにはそれをサポートする証明書チェーンが続きます(空である可能性もある)。 各署名者証明書とそれをサポートする証明書チェーンは、下位から上位(つまり署名者証明書が最初で(ルート)証明書発行局が最後)の順に並びます。- 戻り値:
- 証明書配列のコピー、または存在しない場合は
null。
-
getCodeSigners
public final CodeSigner[] getCodeSigners()このCodeSourceに関連付けられたコード・シグナを返します。この
CodeSourceオブジェクトがCodeSource(URL url, java.security.cert.Certificate[] certs)コンストラクタを使用して作成された場合、証明書チェーンが抽出され、CodeSignerオブジェクトの配列が作成されます。 ただし、検査されるのはX.509証明書だけであり、その他の種類の証明書はすべて無視されます。- 戻り値:
- コード署名者配列のコピー、または存在しない場合は
null。 - 導入されたバージョン:
- 1.5
-
implies
public boolean implies(CodeSource codesource) このCodeSourceオブジェクト"意味"が指定されたCodeSourceの場合、trueを返します。具体的には、このメソッドは次の項目を検査します。 失敗した場合は、
falseを返します。 すべて成功すると、trueが返されます。- codesourceがnullではない。
- このオブジェクトの証明書がnullでない場合に、このオブジェクトの証明書がすべてcodesourceの証明書にある。
- このオブジェクトの位置(getLocation())がnullでない場合に、このオブジェクトの位置とcodesourceの位置について次の項目を検査する。
- codesourceの位置がnullではない。
- このオブジェクトの位置とcodesourceの位置が同じ場合はtrueを返す。
- このオブジェクトのプロトコル(getLocation().getProtocol())はcodesourceのプロトコルと同じである(大文字と小文字は区別されない)。
- このオブジェクトのホスト(getLocation().getHost())がnullでない場合には、このオブジェクトのホストで構築したSocketPermissionは、codesourceのホストで生成したSocketPermissionを包含している。
- このオブジェクトのポート(getLocation().getPort())が-1以外の場合(つまり、ポートが指定されている場合)に、そのポートはcodesourceのポートまたはデフォルト・ポート(codesource.getLocation().getDefaultPort())と同じである。
- このオブジェクトのファイル(getLocation().getFile())がcodesourceのファイルと異なる場合には、次の項目を検査する。このオブジェクトのファイルが「/-」で終わっている場合には、codesourceのファイルはこのオブジェクトのファイルで始まる必要がある(末尾の「-」を除く)。 このオブジェクトのファイルが「/*」で終わっている場合には、codesourceのファイルはこのオブジェクトのファイルで始まる必要があり、また、このほかに「/」のセパレータがあってはならない。 このオブジェクトのファイルが「/」で終わっていない場合には、このオブジェクトのファイルの末尾に「/」を追加することにより、codesourceのファイルをこのオブジェクトのファイルに一致させる必要がある。
- このオブジェクトの参照(getLocation().getRef())がnullでない場合に、その参照はcodesourceの参照と同じである。
たとえば、次のロケーションおよび
null証明書を持つコード・ソース・オブジェクトはすべて、http://www.example.com/classes/foo.jarおよびnull証明書のロケーションを持つコード・ソースを意味します:http: http://*.example.com/classes/* http://www.example.com/classes/- http://www.example.com/classes/foo.jarこのCodeSourceにnullのロケーションとnull証明書チェーンがある場合は、他のすべてのCodeSourceを意味します。- パラメータ:
codesource- 比較するCodeSource。- 戻り値:
- 指定したコード・ソースがこのコード・ソースによって暗黙的に指定されている場合は
true、そうでない場合はfalse。
-
toString
-