モジュール java.sql
パッケージ java.sql

クラスSQLPermission

すべての実装されたインタフェース:
Serializable, Guard

public final class SQLPermission extends BasicPermission
SecurityManagerを有効にしてアプリケーションを実行しているコードが有効なときにSecurityManagerがチェックするアクセス権は、DriverManager.deregisterDriverメソッド、DriverManager.setLogWriterメソッド、DriverManager.setLogStream (deprecated)メソッド、SyncFactory.setJNDIContextメソッド、SyncFactory.setLoggerメソッド、Connection.setNetworkTimeoutメソッド、またはConnection.abortメソッドを呼び出します。 SQLPermissionオブジェクトがない場合、これらのメソッドは実行時例外としてjava.lang.SecurityExceptionをスローします。

SQLPermissionオブジェクトには名前(「ターゲット名」とも呼ばれる)は含まれますが、アクション・リストは含まれません。したがって、名前付きアクセス権が存在するか、存在しないかのどちらかになります。 ターゲット名には、アクセス権(下記を参照)の名前を指定します。 命名規約は、階層的なプロパティ命名規約に従います。 また、ターゲット名のあとにアスタリスクを指定し(「.」のあとに指定するか、単独で指定)、ワイルドカード・マッチングを表すこともできます。 たとえば、loadLibrary.**はワイルドカード・マッチングを表しますが、*loadLibrarya*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ドライバを削除し、そのリソースを解放することを許可します。

導入されたバージョン:
1.3
関連項目:
BasicPermission, Permission, Permissions, PermissionCollection, SecurityManager, 直列化された形式
  • コンストラクタの詳細

    • SQLPermission

      public SQLPermission(String name)
      指定された名前を使用して、新しいSQLPermissionオブジェクトを作成します。 この名前はSQLPermissionのシンボリック名です。
      パラメータ:
      name - このSQLPermissionオブジェクトの名前。 setLogcallAbortsetSyncFactoryderegisterDriverまたはsetNetworkTimeoutのいずれかである必要がある
      例外:
      NullPointerException - namenullの場合。
      IllegalArgumentException - nameが空である場合。
    • SQLPermission

      public SQLPermission(String name, String actions)
      指定された名前を使用して、新しいSQLPermissionオブジェクトを作成します。 名前はSQLPermissionのシンボリック名です。アクションStringは現在使用されていないため、nullにしてください。
      パラメータ:
      name - このSQLPermissionオブジェクトの名前。 setLogcallAbortsetSyncFactoryderegisterDriverまたはsetNetworkTimeoutのいずれかである必要がある
      actions - nullにすること
      例外:
      NullPointerException - namenullの場合。
      IllegalArgumentException - nameが空である場合。