public final class SQLPermission extends BasicPermission
SecurityManager
が有効になっているアプリケーションを実行しているコードがDriverManager.deregisterDriver
メソッド、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つの要求に応答するのを待つ最大期間を指定することを許可します。 |
deregisterDriver | DriverManager のメソッドderegisterDriver の呼出しを許可します |
登録済ドライバ・リストからJDBCドライバを削除し、そのリソースを解放することをアプリケーションに許可します。 |
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
、deregisterDriver
またはsetNetworkTimeout
のいずれかである必要があるNullPointerException
- name
がnull
である場合。IllegalArgumentException
- name
が空である場合。public SQLPermission(String name, String actions)
SQLPermission
オブジェクトを作成します。名前はSQLPermission
のシンボリック名です。アクションString
は現在使用されていないため、null
にしてください。name
- このSQLPermission
オブジェクトの名前。setLog
、callAbort
、setSyncFactory
、deregisterDriver
またはsetNetworkTimeout
のいずれかである必要があるactions
- null
にすることNullPointerException
- name
がnull
である場合。IllegalArgumentException
- name
が空である場合。 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.