public final class NetPermission extends BasicPermission
ターゲット名には、ネットワークアクセス権 (下記を参照) の名前を指定します。命名規約は、階層的なプロパティー命名規約に従います。また、ターゲット名のあとにアスタリスクを指定し (「.」のあとに指定するか、単独で指定)、ワイルドカードによる照合を行うこともできます。たとえば、「foo.*」や「*」は有効ですが、「*foo」や「a*b」は無効です。
NetPermission に指定できるターゲット名と、それで与えられるアクセス権により可能になる操作、およびそのアクセス権をコードに与えることにより生じるリスクを次の表に示します。
アクセス権ターゲット名 | アクセス権により許可される機能 | このアクセス権を許可した場合のリスク |
---|---|---|
allowHttpTrace | HttpURLConnection 内で HTTP TRACE メソッドを使用する機能。 | HTTP TRACE を使用する悪意のあるコードは、他の方法ではアクセスできない HTTP ヘッダー内のセキュリティー保護を必要とする情報 (Cookie など) にアクセスできる場合があります。 |
getCookieHandler | 高レベルのセキュリティー保護を必要とする、HTTP セッションの Cookie 情報を処理する Cookie ハンドラを取得する機能。 | 悪意のあるコードは、Cookie ハンドラを取得することで、高レベルのセキュリティー保護を必要とする Cookie 情報にアクセスできます。Web サーバーのなかには、Cookie を使ってアクセス制御情報などのユーザーの非公開情報を保存したり、ユーザーの閲覧傾向を追跡したりするものもあります。 |
getNetworkInformation | ローカルネットワークのインタフェースに関するすべての情報を取得する機能。 | 悪意のあるコードは、MAC アドレスなどのネットワークハードウェアに関する情報を読み取ることができます。これは、ローカル IPv6 アドレスの作成に使用されることがあります。 |
getProxySelector | ネットワーク接続の確立時に使用すべきプロキシの決定に使用されるプロキシセレクタを取得する機能。 | 悪意のあるコードは、ProxySelector を取得することで、内部ネットワーク上のプロキシホストやそのポートを発見することができます。すると、それらが攻撃の標的になる可能性があります。 |
getResponseCache | ローカル応答キャッシュへのアクセス機能を提供する応答キャッシュを取得する機能。 | ローカル応答キャッシュにアクセスできる悪意のあるコードは、セキュリティー保護を必要とする情報にアクセスできます。 |
requestPasswordAuthentication | システムに登録されたオーセンティケータにパスワードを要求。 | 悪意のあるコードにより、このパスワードが盗まれる可能性があります。 |
setCookieHandler | 高レベルのセキュリティー保護を必要とする、HTTP セッションの Cookie 情報を処理する Cookie ハンドラを設定する機能。 | 悪意のあるコードは、Cookie ハンドラを設定することで、高レベルのセキュリティー保護を必要とする Cookie 情報にアクセスできます。Web サーバーのなかには、Cookie を使ってアクセス制御情報などのユーザーの非公開情報を保存したり、ユーザーの閲覧傾向を追跡したりするものもあります。 |
setDefaultAuthenticator | プロキシまたは HTTP サーバーが証明書を要求したときに使用する、認証情報の取得方法を設定する。 | これにより、ユーザーからの入力を取得のときに、ユーザーの認証情報入力を監視し、それを盗むオーセンティケータが悪意のあるコードにより設定される可能性があります。 |
setProxySelector | ネットワーク接続の確立時に使用すべきプロキシの決定に使用されるプロキシセレクタを設定する機能。 | 悪意のあるコードは、ネットワークトラフィックをある任意のネットワークホストに転送するような ProxySelector を設定できます。 |
setResponseCache | ローカル応答キャッシュへのアクセス機能を提供する応答キャッシュを設定する機能。 | ローカル応答キャッシュにアクセスできる悪意のあるコードは、セキュリティー保護を必要とする情報にアクセスしたり、応答キャッシュ内に不正なエントリを作成したりできます。 |
specifyStreamHandler | URL の作成時にストリームハンドラを指定。 | 悪質なコードが、それが実際にアクセスする場所から実効バイトを取得するストリームハンドラを指定して、通常はアクセスすることのないリソース (file:/foo/fum/ のように) を使って URL を作成する可能性があります。このようにしてシステムをだまして、あるクラスの出所を偽り、そのクラスの ProtectionDomain/CodeSource を作成させてしまう可能性があります。 |
コンストラクタと説明 |
---|
NetPermission(String name)
指定された名前で NetPermission を新しく作成します。
|
NetPermission(String name, String actions)
指定された名前で NetPermission オブジェクトを新しく作成します。
|
equals, getActions, hashCode, implies, newPermissionCollection
checkGuard, getName, toString
public NetPermission(String name)
name
- NetPermission の名前。NullPointerException
- name
が null
の場合。IllegalArgumentException
- name
が空である場合。public NetPermission(String name, String actions)
name
- NetPermission の名前。actions
- null でなければならない。NullPointerException
- name
が null
の場合。IllegalArgumentException
- name
が空である場合。 バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.