SQL Engine Reference (v11)

SET SECURITY

SET SECURITY ステートメントを使用すると、Master ユーザーはログオンしているデータベースのセキュリティを有効または無効にできます。

構文

SET SECURITY = <パスワード | NULL> 

次の例では、データベースのセキュリティを有効にし、Master パスワードを 'mypasswd' と設定しています。

SET SECURITY = mypasswd 

次の例では、パスワードを 123456 と設定しています。

SET SECURITY = '123456' 
666

次の例ではセキュリティが無効になります。

SET SECURITY = NULL 

備考

セキュリティを設定するには、まず Master としてログオンする必要があります。その後、SET SECURITY ステートメントを使用してパスワードを割り当てることができます。セキュリティで保護されていないデータベースにログオンする場合、Master はパスワードを要求されません。データベースのセキュリティを有効にするには、Master にパスワードを割り当てる必要があります。

SET SECURITY は、Master ユーザーのセッションが現在の唯一のデータベース接続である場合のみ発行できます。セキュリティは Pervasive PSQL Control Center(PCC)から設定することもできます。『Pervasive PSQL User's Guide』の Pervasive PSQL エクスプローラーを使ってセキュリティをオンにするにはを参照してください。


メモ

SQL Editor 内で SET SECURITY ステートメントを実行することはできません。実行しようとするとエラーになります。セキュリティなしのデータベースの場合、SQL Editor は辞書ファイルをロックして、パスワードが設定されないようにします。セキュリティで保護されたデータベースの場合、SQL Editor はデータベース ファイルへの 2 番目の接続を開いて、セキュリティが無効にされないようにします。


パスワード要件については、パスワードの特性を参照してください。

ユーザー権限

オブジェクト(テーブル、ビュー、およびストアド プロシージャなど)のユーザー権限は、SET SECURITY が NULL に設定された後もシステム テーブルに保持されます。次のシナリオについて考えてみましょう。

テーブル "t1" が存在しなくなっても、"t1" の権限はシステム テーブル内に残っています("t1" の ID は X$Rights 内にまだあります)。以下について考えてみましょう。

関連項目

ALTER USER

CREATE USER

GRANT

REVOKE

SET PASSWORD


SET ROWCOUNT

SET TIME ZONE