java.net
クラス NetPermission
java.lang.Object
java.security.Permission
java.security.BasicPermission
java.net.NetPermission
- すべての実装されたインタフェース:
- Serializable, Guard
public final class NetPermission
- extends BasicPermission
このクラスは、各種のネットワークアクセス権のために使います。NetPermission は名前 (ターゲット名ともいう) を含みますが、アクションリストは含みません。名前付きのアクセス権は、持っていても、持っていなくてもかまいません。
ターゲット名には、ネットワークアクセス権 (下記を参照) の名前を指定します。命名規約は、階層型プロパティーの命名規約に従います。また、ターゲット名のあとにアスタリスクを指定し (「.」のあとに指定するか、単独で指定)、ワイルドカードによる照合を行うこともできます。たとえば、「foo.*」や「*」は有効ですが、「*foo」や「a*b」は無効です。
NetPermission に指定できるターゲット名と、それで与えられるアクセス権により可能になる操作、およびそのアクセス権をコードに与えることにより生じるリスクを次の表に示します。
アクセス権ターゲット名 |
アクセス権により許可される機能 |
このアクセス権を許可した場合のリスク |
setDefaultAuthenticator |
プロキシまたは HTTP サーバーが証明書を要求したときに使用する、認証情報の取得方法を設定する。 |
悪意のあるコードがオーセンティケータを設定して、ユーザーからの入力を取得し、認証の入力を監視して入手できます。 |
requestPasswordAuthentication |
システムに登録されたオーセンティケータにパスワードを要求。 |
悪意のあるコードにより、このパスワードが盗まれる可能性があります。 |
specifyStreamHandler |
URL の作成時にストリームハンドラを指定。 |
悪意あるコードは、アクセス可能な場所から実際のバイトを取得するストリームハンドラを指定することで、通常ならばアクセスできないリソースを使って URL を作成できます (file:/foo/fum/ など)。こうすると、クラスが位置する URL を偽って、そのクラスのための ProtectionDomain または CodeSource をシステムに作成できます。 |
- 関連項目:
BasicPermission
,
Permission
,
Permissions
,
PermissionCollection
,
SecurityManager
,
直列化された形式
NetPermission
public NetPermission(String name)
- 指定された名前で NetPermission を新しく作成します。名前は、NetPermission の記号名 (「setDefaultAuthenticator」など) です。名前の末尾には「*」や「.*」を付けて、ワイルドカードを指定できます。
- パラメータ:
name
- NetPermission の名前
NetPermission
public NetPermission(String name,
String actions)
- 指定された名前で、新しい NetPermission を作成します。名前は、NetPermission の記号名です。String の actions は現在未使用なので、null にしておいてください。
- パラメータ:
name
- NetPermission の名前actions
- null でなければならない
Copyright 2006 Sun Microsystems, Inc. All Rights Reserved. Use of this specification is subject to license terms.