- java.lang.Object
-
- java.security.Permission
-
- java.security.BasicPermission
-
- java.util.PropertyPermission
-
- すべての実装されたインタフェース:
Serializable,Guard
public final class PropertyPermission extends BasicPermission
このクラスはプロパティ・アクセス権のためのクラスです。名前には、プロパティの名前(java.homeやos.nameなど)を指定します。 命名規約は、階層的なプロパティ命名規約に従います。 また、ターゲット名のあとにアスタリスクを指定し(「.」のあとに指定するか、単独で指定)、ワイルドカードによる照合を行うこともできます。 たとえば、「java.*」や「*」はワイルドカードによる照合を行いますが、「*java」や「a*b」は行いません。
許可するアクションは、カンマで区切られた1個以上のキーワードのリストを内容とする文字列としてコンストラクタに引き渡されます。 指定できるキーワードは、readとwriteです。 それぞれの意味は、次のように定義されます。
- read
- 読込み権。
System.getPropertyの呼出しを許可します。 - write
- 書込み権。
System.setPropertyの呼出しを許可します。
アクション文字列は、処理の前に小文字に変換されます。
特定のシステム・プロパティへのアクセス権をコードに与えるときは注意してください。 たとえば、システム・プロパティjava.homeへのアクセス権を与えると、悪意のあるコードにより、システム環境に関する機密情報(Javaのインストール・ディレクトリ)が盗まれる可能性があります。 また、システム・プロパティuser.nameおよびuser.homeへのアクセス権を与えると、悪意のあるコードにより、ユーザー環境に関する重要な情報(ユーザーのアカウント名とホーム・ディレクトリ)が盗まれる可能性があります。
- 導入されたバージョン:
- 1.2
- 関連項目:
BasicPermission,Permission,Permissions,PermissionCollection,SecurityManager
-
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 PropertyPermission(String name, String actions)名前を指定して新しいPropertyPermissionオブジェクトを作成します。
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 具象メソッド 修飾子と型 メソッド 説明 booleanequals(Object obj)2つのPropertyPermissionオブジェクトが同じであるかどうかを判定します。StringgetActions()アクションの「正規の文字列表現」を返します。inthashCode()このオブジェクトのハッシュ・コード値を返します。booleanimplies(Permission p)PropertyPermissionオブジェクトが、指定されたアクセス権を含んでいるかどうかを判定します。PermissionCollectionnewPermissionCollection()PropertyPermissionオブジェクトを格納するための新しいPermissionCollectionオブジェクトを返します。-
クラス java.security.Permissionから継承されたメソッド
checkGuard, getName, toString
-
-
-
-
コンストラクタの詳細
-
PropertyPermission
public PropertyPermission(String name, String actions)
名前を指定して新しいPropertyPermissionオブジェクトを作成します。 nameはシステム・プロパティの名前で、actionsには、プロパティで許可されている目的のアクションのカンマで区切られたリストが入ります。 有効なアクションはreadとwriteです。- パラメータ:
name- PropertyPermissionの名前。actions- アクション文字列。- 例外:
NullPointerException-nameがnullである場合。IllegalArgumentException-nameが空の場合、またはactionsが無効の場合。
-
-
メソッドの詳細
-
implies
public boolean implies(Permission p)
PropertyPermissionオブジェクトが、指定されたアクセス権を含んでいるかどうかを判定します。つまり、このメソッドは次の場合にtrueを返します。
- pがPropertyPermissionのインスタンスである
- pのアクションは、このオブジェクトのアクションのサブセットである
- pの名前がこのオブジェクトの名前に含まれている。 たとえば、java.*はjava.homeを含む
- オーバーライド:
implies、クラス:BasicPermission- パラメータ:
p- チェック対象のアクセス権。- 戻り値:
- 指定されたアクセス権がこのオブジェクトに含まれる場合はtrue、そうでない場合はfalse。
-
equals
public boolean equals(Object obj)
2つのPropertyPermissionオブジェクトが同じであるかどうかを判定します。 objがPropertyPermissionであり、オブジェクトと同じ名前とアクションを持っているかどうかを判定します。- オーバーライド:
equals、クラス:BasicPermission- パラメータ:
obj- このオブジェクトと等しいかどうかが判定されるオブジェクト。- 戻り値:
- objがPropertyPermissionであり、PropertyPermissionオブジェクトと同じ名前とアクションを持っている場合はtrue
- 関連項目:
Object.hashCode(),HashMap
-
hashCode
public int hashCode()
このオブジェクトのハッシュ・コード値を返します。 使用するハッシュ・コードは、このアクセス権の名前のハッシュ・コードであるgetName().hashCode()です。getNameは、Permissionスーパー・クラスから継承したメソッドです。- オーバーライド:
hashCode、クラス:BasicPermission- 戻り値:
- このオブジェクトのハッシュ・コード値。
- 関連項目:
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
-
getActions
public String getActions()
アクションの「正規の文字列表現」を返します。 つまり、このメソッドは常にread、writeの順序で現在のアクションを返します。 たとえば、このPropertyPermissionオブジェクトがwriteとreadの両方のアクションを許可する場合、getActionsを呼び出すと、「read,write」という文字列が返されます。- オーバーライド:
getActions、クラス:BasicPermission- 戻り値:
- アクションの正規の文字列表現。
-
newPermissionCollection
public PermissionCollection newPermissionCollection()
PropertyPermissionオブジェクトを格納するための新しいPermissionCollectionオブジェクトを返します。- オーバーライド:
newPermissionCollection、クラス:BasicPermission- 戻り値:
- PropertyPermissionを格納するのに適切な新しいPermissionCollectionオブジェクト
-
-