public final class SQLPermission extends BasicPermission
SecurityManager
が有効になっているアプリケーションが DriverManager.setLogWriter
メソッド、DriverManager.setLogStream
(非推奨) メソッド、SyncFactory.setJNDIContext
メソッド、SyncFactory.setLogger
メソッド、Connection.setNetworktimeout
メソッド、または Connection.abort
メソッドを呼び出すときに、SecurityManager
がチェックするアクセス権です。SQLPermission
オブジェクトがない場合、これらのメソッドは実行時例外として java.lang.SecurityException
をスローします。
SQLPermission
オブジェクトには名前 (ターゲット名とも呼ばれる) は含まれますが、アクションリストは含まれません。したがって、名前付きアクセス権が存在するか、存在しないかのどちらかになります。ターゲット名には、アクセス権 (下記を参照) の名前を指定します。命名規約は、階層的なプロパティー命名規約に従います。また、ターゲット名のあとにアスタリスクを指定し (「.」のあとに指定するか、単独で指定)、ワイルドカードによる照合を行うこともできます。たとえば、loadLibrary.*
や *
は有効ですが、*loadLibrary
や a*b
は無効です。
SQLPermission
に指定できるターゲット名を次の表に示します。表には、アクセス権により許可される操作、およびそのアクセス権をコードに与えた場合のリスクが示されます。
アクセス権ターゲット名 | アクセス権により許可される操作 | このアクセス権を許可した場合のリスク |
---|---|---|
setLog | ロギングストリームの設定 | このアクセス権を与えるのは危険です。ログの内容には、ユーザー名とパスワード、SQL 文、および SQL データが含まれます。 |
callAbort | Connection メソッド abort 呼び出しを許可します |
データベースへの物理的な接続を終了させることをアプリケーションに許可します。 |
setSyncFactory | SyncFactory メソッド setJNDIContext および setLogger の呼び出しを許可します |
SyncProvider 実装の取得元として使用可能な JNDI コンテキストと、SyncProvider 実装によって使用されるログオブジェクトを指定することをアプリケーションに許可します。 |
setNetworkTimeout | Connection メソッド setNetworkTimeout の呼び出しを許可します |
アプリケーションで、Connection または Connection から作成されたオブジェクトが、データベースが任意の 1 つの要求に応答するのを待つ最大期間を指定することを許可します。 |
アプレットを実行するユーザーは、許可するアクセス権を決定し、Policy Tool
を実行して、ポリシーファイルに SQLPermission
を作成します。プログラマは、コンストラクタを直接使用するのではなく、ツールを使って SQLPermission
のインスタンスを作成します。
BasicPermission
, Permission
, Permissions
, PermissionCollection
, SecurityManager
, 直列化された形式コンストラクタと説明 |
---|
SQLPermission(String name)
指定された名前を使用して、新しい
SQLPermission オブジェクトを作成します。 |
SQLPermission(String name, String actions)
指定された名前を使用して、新しい
SQLPermission オブジェクトを作成します。 |
equals, getActions, hashCode, implies, newPermissionCollection
checkGuard, getName, toString
public SQLPermission(String name)
SQLPermission
オブジェクトを作成します。この名前は SQLPermission
のシンボリック名です。name
- この SQLPermission
オブジェクトの名前。setLog
、callAbort
、setSyncFactory
、または setNetworkTimeout
のいずれかでなければならないNullPointerException
- name
が null
である場合。IllegalArgumentException
- name
が空である場合。public SQLPermission(String name, String actions)
SQLPermission
オブジェクトを作成します。名前は SQLPermission
のシンボリック名です。アクション String
は現在使用されていないため、null
にしてください。name
- この SQLPermission
オブジェクトの名前。setLog
、callAbort
、setSyncFactory
、または setNetworkTimeout
のいずれかでなければならないactions
- null
にすることNullPointerException
- name
が null
である場合。IllegalArgumentException
- name
が空である場合。 バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.