ADASCR(セキュリティ機能)

このドキュメントでは ADASCR ユーティリティについて説明します。

次のトピックについて説明します。


機能概要

セキュリティユーティリティ ADASCR は、ファイルプロテクションレベルとユーザーパスワードを作成、変更、削除し、個々のパスワードのセキュリティ機能を有効にします。さらに、このユーティリティを使用して、ファイルとパスワードセキュリティ情報を表示することもできます。ADASCR のエクスポート機能の出力を使用して、データベースのすべてのセキュリティ定義から、一部を別のデータベースに適用できます。

このユーティリティへのアクセスは、データベースセキュリティに責任を負う人(DBA)に厳しく制限すべきです。

1 回の ADASCR 実行に複数の機能を指定することができます。指定できる機能の数に制限はありません。

影響を受けるデータベースはオンラインにする必要があります。

ADASCR によって更新された内容はすべてすぐに適用されます。

このユーティリティは多機能ユーティリティです。

注意:
あるハードウェアアーキテクチャまたはオペレーティングシステムから別のものに既存のセキュリティ定義をコピーするには、EXPORT 制御パラメータを使用する必要があります。ADAULD/ADADCU および ADACMP/ADAMUP を使って、あるハードウェアアーキテクチャから別のアーキテクチャにセキュリティ定義をコピーすることはできません。これは、セキュリティファイルに格納されるデータが、プラットフォーム依存の方法で格納され、暗号化されていることが理由です。

処理フロー

graphics/adascr.png

データセット 論理名/
環境変数
記憶媒体 追加情報
コントロールステートメント stdin/
SYS$INPUT
  ユーティリティマニュアル
ADASCR メッセージ stdout/
SYS$OUTPUT
  メッセージおよびコード
エクスポートされたセキュリティ定義 SCROUT ディスク ユーティリティマニュアル

チェックポイント

このユーティリティはチェックポイントを書き込みません。

制御パラメータ

次のコントロールパラメータを使用できます。

    CHANGE {=|:} (string, string)

M   DBID = number

    DELETE = string

    DISPLAY = [PASSWORDS |
               PERMISSIONS, PASSWORD  {=|:} {* | string} |
               PROTECTIONS,
               FILE = {* | (number[-number][,number[-number]]...)}  |
               VALUE_CRITERIA, PASSWORD  {=|:} {* | string}]

    EXPORT = {PASSWORDS,
D            [TARGET_ARCHITECTURE = KEYWORD,]
               PASSWORD  {=|:} {* | string} |
               PROTECTIONS,
D            [TARGET_ARCHITECTURE = KEYWORD,]
               FILE = {* | (number[-number][,number[-number]]...)}  |
               VALUE_CRITERIA,
D            [TARGET_ARCHITECTURE = KEYWORD,]
               FILE = {* | (number[-number][,number[-number]]...)}
               PASSWORD = {* | string}}

    INSERT {=|:} string, FILE = (number[-number][,number[-number]]...)
             ,ACCESS = (number[,number]...)
             ,UPDATE = (number[,number]...)

    PROTECT = (number[-number][,number[-number]]...)
              ,ACCESS = (number[,number]...)
              ,UPDATE = (number[,number]...)

    SECURITY_BY_VALUE {=|:} string, FILE = number
                        ,ACCESS_CRITERION
                        ,SEARCH_BUFFER = string *
                        ,VALUE_BUFFER = string *
                        ,UPDATE_CRITERION
                        ,SEARCH_BUFFER = string *
                        ,VALUE_BUFFER = string *

* サーチ/アクセスバッファ文字列パラメータの後には、途中にコンマを付けずに、すぐに <新規行> を続ける必要があります。

例で使用されている ADASCR 定義

以下の例では、次の ADASCR 定義があらかじめ作成されていることを前提としています。

PROTECT=9,ACCESS=9,UPDATE=9
PROTECT=9,NAME=(**,AC,AD,BC),ACCESS=(0,14,14,14),UPDATE=(0,14,14,14)
PROTECT=9,NAME=(FC,FD,IC,ID),ACCESS=(14,14,14,14),UPDATE=(0,0,0,0)
PROTECT=11,ACCESS=1,UPDATE=2
PROTECT=11,NAME=(**,AA,AC,AE),ACCESS=(0,6,3,5),UPDATE=(0,9,9,7)
PROTECT=11,NAME=(AD,AI,AJ,AK),ACCESS=(4,10,10,10),UPDATE=(8,12,12,12)
PROTECT=11,NAME=(AL,AR,AS,AT),ACCESS=(10,7,7,7),UPDATE=(12,9,9,9)
PROTECT=11,NAME=(AX,AY,AZ),ACCESS=(11,11,8),UPDATE=(13,13,10)
PROTECT=(12,13),ACCESS=(12,13),UPDATE=(12,13)
INSERT=000009CD,FILE=(9,12,13),ACCESS=(0,0,0),UPDATE=(13,13,13)
INSERT=00110203,FILE=(11),ACCESS=(2),UPDATE=(3)
INSERT=00110304,FILE=(11),ACCESS=(3),UPDATE=(4)
INSERT=00110506,FILE=(11),ACCESS=(5),UPDATE=(6)
INSERT=00110809,FILE=(11),ACCESS=(8),UPDATE=(9)
INSERT=09CD09CD,FILE=(9,12,13),ACCESS=(13,13,13),UPDATE=(13,13,13)
SECURITY_BY_VALUE=09CD09CD,FILE=9,ACCESS_CRITERION,SEARCH_BUFFER=CA,1,EQ,O,CA,1,EQ.
VALUE_BUFFER=AU
UPDATE_CRITERION,SEARCH_BUFFER=CA,1,EQ.
VALUE_BUFFER=U

CHANGE

CHANGE {=|:} (string, string)

この機能は、既存のパスワードを変更します。

最初の文字列で指定するパスワードは存在しているパスワードにする必要があります。

2 番目の文字列で指定する値は、存在しているパスワードと同じであってはなりません。パスワードは 1~8 文字です。指定された文字列が 8 文字未満の場合、末尾に空白が追加されます。パスワードに特殊文字や空白を含めることはできません。

等号を指定する場合、「文字列」に指定された値が大文字に変換されます。コロンを指定した場合、大文字の変換は実行されません。

最初の文字列で指定したパスワードに有効なすべてのエントリは、新規パスワードに対しても有効です。

adascr: change:(000009CD,000009cd)
%ADASCR-I-PWCHA, password "000009CD" changed to "000009cd"

パスワード OLDPW1 を NEWPW1 に変更します。

DBID

DBID = number

このパラメータは、現在のデータベースを選択します。

注意:
ニュークリアスは実行させる必要があります。

adascr: dbid=155

現在使用されているデータベースはデータベース 155 です。

DELETE

DELETE = string

このパラメータは、文字列で指定した既存のパスワードを関連する承認レベルおよびセキュリティバイバリュー条件とともに削除します。

adascr: delete=000009CD
%ADASCR-I-PWDEL, password "000009CD" deleted

パスワード USERPW1 を削除します。

DISPLAY

DISPLAY = { PASSWORDS |
  PERMISSIONS, PASSWORD {=|:} {* | string} |
  PROTECTIONS, FILE = {* | (number[-number][,number[-number]]...)} |
  VALUE_CRITERIA, PASSWORD {=|:} {* | string}}

このパラメータは、ADASCR ユーティリティの定義に従って、ファイルについての現在のセキュリティ情報とパスワードを表示します。

プロテクションレベル、パスワード、パスワード承認レベル、およびセキュリティバイバリュー条件の詳細が表示されます。

FILE = {* | number[-number][,number[-number]]...}

FILE パラメータには、先行する DISPLAY 機能が適用されるファイルのリストまたは範囲(複数可)を指定します。

PASSWORDS

PASSWORDS パラメータは、現在セキュリティファイルに格納されているパスワードのリストをアルファベット順に出力します。

adascr: display=passwords


List of defined passwords for Database 155 ("ALPHA-TS")

FORTYTWO
G6MON
USERPW1
VOYAGER

Total of 4 defined passwords

PERMISSIONS

PERMISSIONS パラメータは、パスワード権限情報と現在のファイルプロテクションレベルを照合した結果、現在ロードされているファイルごとの指定パスワードのアクセス権限および更新権限がどうなっているかを出力します。

アクセス権限または更新権限が与えられている場合には、文字 Y で示されます。権限が与えられていない場合には、文字 N で示されます。

ファイルに対するアクセス権限または更新権限が与えられていて、さらにセキュリティバイバリュー制限がそのファイルに適用されている場合はカッコで囲まれ、(Y) で示されます。

ファイルに対してフィールドレベルセキュリティが定義されていて、フィールドへのアクセス権限またはフィールドの更新の権限がファイル権限と異なる場合は、フィールドおよび対応する権限も表示されます。

adascr: display=permissions,password=09CD09CD

password : "09CD09CD"

 FILE    | ACCESS | UPDATE
   FIELD |        |
--------------------------
    1    |     Y  |    Y
    2    |     Y  |    Y
    3    |     Y  |    Y
    9    |    (Y) |   (Y)
      AC |     N  |    N
      AD |     N  |    N
      BC |     N  |    N
      FC |     N  |   (Y)
      FD |     N  |   (Y)
      IC |    (Y) |    N
      ID |    (Y) |    N
      CN |     N  |
      S2 |     N  |
   11    |     N  |    N
   12    |     Y  |    Y
   13    |     Y  |    Y
   14    |     N  |    N
--------------------------

注意:
CN および S2 は照合ディスクリプタおよびスーパーディスクリプタです。派生ディスクリプタの場合は、明示的に更新できないので、更新権限は表示されません。

PROTECTIONS

DISPLAY=PROTECTIONS は、指定したファイルの保護情報を表示します。アクセスまたは更新のプロテクションレベルが 0 より大きいフィールドについては、プロテクション情報も表示されます。

例:

adascr: disp=protections,file=(9-11,14)

 FILE    | ACCESS | UPDATE
   FIELD |        |
--------------------------
    9    |      9 |      9
      AC |     14 |     14
      AD |     14 |     14
      BC |     14 |     14
      FC |     14 |      0
      FD |     14 |      0
      IC |      0 |     14
      ID |      0 |     14
      CN |     14 |
      S2 |     14 |
   11    |      1 |      2
      AA |      6 |      9
      AC |      3 |      9
      AE |      5 |      7
      AD |      4 |      8
      AI |     10 |     12
      AJ |     10 |     12
      AK |     10 |     12
      AL |     10 |     12
      AR |      7 |      9
      AS |      7 |      9
      AT |      7 |      9
      AX |     11 |     13
      AY |     11 |     13
      AZ |      8 |     10
      PH |      3 |
      S2 |      3 |
      S3 |      7 |
      S4 |      4 |
   14    |      0 |      0
--------------------------

注意:
ファイル 9、PH、S2、S3、S4 の CN および S2 は照合ディスクリプタ、スーパーディスクリプタ、またはフォネティックディスクリプタです。派生ディスクリプタの場合は、明示的に更新できないので、更新権限は表示されません。

VALUE_CRITERIA

VALUE_CRITERIA パラメータは、指定パスワードに現在定義されているすべてのセキュリティバイバリュー条件を出力します。

例:

adascr: display=value_criteria,password=*

There are no value criteria defined for password "000009CD"

There are no value criteria defined for password "00110203"

There are no value criteria defined for password "00110304"

There are no value criteria defined for password "00110506"

There are no value criteria defined for password "00110809"

There are no value criteria defined for password "09CD0000"


password : "09CD09CD"

| File | Security by Value criterion
|------+----------------------------------------------------------------------
|    9 | ACCESS_CRITERION
|      |   SEARCH_BUFFER: "CA,1,EQ,O,CA,1,EQ."
|      |   VALUE_BUFFER:  "AU"
|      | UPDATE_CRITERION
|      |   SEARCH_BUFFER: "CA,1,EQ."
|      |   VALUE_BUFFER:  "U"
|-----------------------------------------------------------------------------


Total of 7 defined passwords

EXPORT

EXPORT = {PASSWORDS,
            [TARGET_ARCHITECTURE = keyword,]
            PASSWORD {=|:} {* | string} |
          PROTECTIONS,
            [TARGET_ARCHITECTURE = keyword,]
            FILE = {* | (number[-number][,number[-number]]...)} |
          VALUE_CRITERIA,
            [TARGET_ARCHITECTURE = keyword,]
            FILE = {* | (number[-number][,number[-number]]...)},
            PASSWORD {=|:} {* | string}}

この機能は、現在のセキュリティ設定(パスワード定義、ファイルプロテクションレベル、およびセキュリティバイバリュー条件)を、シーケンシャルファイル SCROUT にエクスポートします。ファイル SCROUT 内の出力は、セキュリティ定義を別のデータベースにインポートするための ADASCR 入力として使用できます。

注意:
SCROUT ファイルがすでに存在する場合は、現在のセキュリティ設定が既存のファイルに追加されます。

セキュリティ定義は、メインフレーム構文でエクスポートしてメインフレームプラットフォームにインポートする(TARGET_ARCHITECTURE=MAINFRAME)ことも、オープンシステム構文でオープンシステムプラットフォームにインポートする(TARGET_ARCHITECTURE=OPEN_SYSTEMS - デフォルト)こともできます。

PASSWORDS

PASSWORDS,
TARGET_ARCHITECTURE = keyword,
PASSWORD  {=|:} {*|string}

PASSWORDS パラメータは、パスワードの権限レベル(アクセスおよび更新)と、指定されたパスワードに関連付けられたファイルまたはファイルリストをエクスポートします。

TARGET_ARCHITECTURE パラメータは、ターゲットプラットフォームの構文を定義します。次のキーワードを使用できます。

キーワード 説明
MAINFRAME 定義したパスワードをメインフレーム構文でエクスポートします。
OPEN_SYSTEMS 定義したパスワードをオープンシステム構文でエクスポートします。

デフォルトの TARGET_ARCHITECTURE は OPEN_SYSTEMS です。

PASSWORD パラメータは、セキュリティ設定をエクスポートする必要があるパスワードを指定します。データベースに定義されているすべてのパスワードをエクスポートすることもできます。これを行うには、このパラメータにアスタリスクを指定します。

例(オープンシステム用のエクスポート):

adascr: export=passwords,target_architecture=open_systems,password=09CD09CD
%ADASCR-I-PWEXP, Password 09CD09CD and its access and update levels successfully exported.

注意:
target_architecture=open_systems はオプションで、省略できます。

これにより、SCROUT の出力は以下のようになります。

INSERT=09CD09CD,FILE=(9,12,13),ACCESS=(13,13,13),UPDATE=(13,13,13)

例(メインフレーム用のエクスポート):

adascr: export=passwords,target_architecture=mainframe,password=09CD09CD
%ADASCR-I-PWEXP, Password 09CD09CD and its access and update levels successfully exported.

これにより、SCROUT の出力は以下のようになります。

ADASCR INSERT PW=09CD09CD,FILE=9,ACC=13,UPD=13
ADASCR FILE=12,ACC=13,UPD=13
ADASCR FILE=13,ACC=13,UPD=13

PROTECTIONS

PROTECTIONS,
TARGET_ARCHITECTURE = keyword,
FILE = {*|(number[-number][,number[-number]]…)}

PROTECTIONS パラメータは、指定されたファイル、ファイル範囲(複数可)のプロテクションレベルをエクスポートします。

TARGET_ARCHITECTURE パラメータは、ターゲットプラットフォームの構文を定義します。次のキーワードを使用できます。

キーワード 説明
MAINFRAME 定義したパスワードをメインフレーム構文でエクスポートします。
OPEN_SYSTEMS 定義したパスワードをオープンシステム構文でエクスポートします。

デフォルトの TARGET_ARCHITECTURE は OPEN_SYSTEMS です。

FILE パラメータは、プロテクションレベルをエクスポートするファイルを指定します。

例(オープンシステム用のエクスポート):

adascr: export=protections,file=(9,11,13)
%ADASCR-I-PREXP, Protection settings for file 9 successfully exported.
%ADASCR-I-PREXP, Protection settings for file 11 successfully exported.
%ADASCR-I-PREXP, Protection settings for file 13 successfully exported.

これにより、SCROUT の出力は以下のようになります。

PROTECT=9,ACCESS=9,UPDATE=9
PROTECT=9,NAME=(**,AC,AD,BC),ACCESS=(0,14,14,14),UPDATE=(0,14,14,14)
PROTECT=9,NAME=(FC,FD,IC,ID),ACCESS=(14,14,14,14),UPDATE=(0,0,0,0)
PROTECT=11,ACCESS=1,UPDATE=2
PROTECT=11,NAME=(**,AA,AC,AE),ACCESS=(0,6,3,5),UPDATE=(0,9,9,7)
PROTECT=11,NAME=(AD,AI,AJ,AK),ACCESS=(4,10,10,10),UPDATE=(8,12,12,12)
PROTECT=11,NAME=(AL,AR,AS,AT),ACCESS=(10,7,7,7),UPDATE=(12,9,9,9)
PROTECT=11,NAME=(AX,AY,AZ),ACCESS=(11,11,8),UPDATE=(13,13,10)
PROTECT=13,ACCESS=13,UPDATE=13
PROTECT=13,NAME=(**),ACCESS=(0),UPDATE=(0)

例(メインフレーム用のエクスポート):

adascr: export=protections,target_architecture=mainframe,file=11
%ADASCR-I-PREXP, Protection settings for file 11 successfully exported.

これにより、SCROUT の出力は以下のようになります。

ADASCR PROTECT FILE=11,ACC=1,UPD=2
ADASCR PROTECT FILE=11,NAME=(AA,AC,AE,AD),ACC=(6,3,5,4),UPD=(9,9,7,8)
ADASCR PROTECT FILE=11,NAME=(AF,AG,AH,AI),ACC=(0,0,0,10),UPD=(0,0,0,12)
ADASCR PROTECT FILE=11,NAME=(AJ,AK,AL,AN),ACC=(10,10,10,0),UPD=(12,12,12,0)
ADASCR PROTECT FILE=11,NAME=(AM,AO,AP,AR),ACC=(0,0,0,7),UPD=(0,0,0,9)
ADASCR PROTECT FILE=11,NAME=(AS,AT,AU,AV),ACC=(7,7,0,0),UPD=(9,9,0,0)
ADASCR PROTECT FILE=11,NAME=(AX,AY,AZ),ACC=(11,11,8),UPD=(13,13,10)

VALUE_CRITERIA

VALUE_CRITERIA,
TARGET_ARCHITECTURE = (keyword [,keyword]),
FILE = {*|(number[-number][,number[-number]]…)},
PASSWORD  {=|:} {*|string}

VALUE_CRITERIA パラメータは、「string」で指定されるパスワードに対して、特定のファイルに定義されているセキュリティバイバリュー設定をエクスポートします。

TARGET_ARCHITECTURE パラメータは、ターゲットプラットフォームの構文およびバイト順序を定義します。次のキーワードを使用できます。

キーワードグループ 有効なキーワード
構文 MAINFRAME
OPEN_SYSTEMS
バイト順 HIGH_ORDER_BYTE_FIRST
LOW_ORDER_BYTE_FIRST

デフォルトの TARGET_ARCHITECTURE は OPEN_SYSTEMS です。

デフォルトのバイト順序は、ADASCR が実行されているマシンのアーキテクチャに対応したものになります。

注意:
セキュリティバイバリュー定義をオープンシステムからメインフレームプラットフォームにエクスポートする場合、サーチバッファに W フォーマットのフィールドが含まれていると警告が表示されます。これは、セキュリティバイバリュー定義では、メインフレームプラットフォームで W フォーマットのフィールドがサポートされていないことが理由です。W フォーマットのフィールドを含むサーチバッファはエクスポートされません。

FILE パラメータは、セキュリティバイバリュー定義をエクスポートするファイルのリストまたは範囲(複数可)を指定します。同一のファイル番号を複数回指定することはできません。

PASSWORD パラメータは、セキュリティバイバリュー定義をエクスポートするパスワードを指定します。アスタリスクを指定すると、定義されているすべてのパスワードがエクスポートされます。

例(オープンシステム用のエクスポート):

adascr: export=value_criteria,file=9,PASSWORD=*
There are no value criteria defined for password "000009CD"

There are no value criteria defined for password "00110203"

There are no value criteria defined for password "00110304"

There are no value criteria defined for password "00110506"

There are no value criteria defined for password "00110809"

There are no value criteria defined for password "09CD0000"

%ADASCR-I-SBVEXP, Security by value settings on file 9 for password 09CD09CD succ
essfully exported.

これにより、SCROUT の出力は以下のようになります。

SECURITY_BY_VALUE=09CD09CD,FILE=9,ACCESS_CRITERION,SEARCH_BUFFER=CA,1,EQ,O,CA,1,E
Q.
VALUE_BUFFER=AU
UPDATE_CRITERION,SEARCH_BUFFER=CA,1,EQ.
VALUE_BUFFER=U

例(メインフレーム用のエクスポート):

adascr: export=protections,target_architecture=mainframe,file=11
%ADASCR-I-PREXP, Protection settings for file 11 successfully exported.

これにより、SCROUT の出力は以下のようになります。

ADASCR PROTECT FILE=11,ACC=1,UPD=2
ADASCR PROTECT FILE=11,NAME=(AA,AC,AE,AD),ACC=(6,3,5,4),UPD=(9,9,7,8)
ADASCR PROTECT FILE=11,NAME=(AF,AG,AH,AI),ACC=(0,0,0,10),UPD=(0,0,0,12)
ADASCR PROTECT FILE=11,NAME=(AJ,AK,AL,AN),ACC=(10,10,10,0),UPD=(12,12,12,0)
ADASCR PROTECT FILE=11,NAME=(AM,AO,AP,AR),ACC=(0,0,0,7),UPD=(0,0,0,9)
ADASCR PROTECT FILE=11,NAME=(AS,AT,AU,AV),ACC=(7,7,0,0),UPD=(9,9,0,0)
ADASCR PROTECT FILE=11,NAME=(AX,AY,AZ),ACC=(11,11,8),UPD=(13,13,10)

Windows でエクスポートして UNIX でインポートする例

この例では、後で UNIX Adabas データベース 34 にインポートするために、Windows Adabas データベース 33 の既存のセキュリティ設定をエクスポートする方法を示します。

ADASCR のエクスポート機能は次のように使用されます。

>adascr db=33 export=passwords,password=*
%ADASCR-I-STARTED,      12-JAN-2017 16:17:29, Version 6.5.1.0 (Windows 64Bit)
%ADASCR-I-DBON, database 6 accessed online
%ADASCR-I-PWEXP, Password 000009CD and its access and update levels successfully
exported.
%ADASCR-I-PWEXP, Password 00110203 and its access and update levels successfully
exported.
%ADASCR-I-PWEXP, Password 00110304 and its access and update levels successfully
exported.
%ADASCR-I-PWEXP, Password 00110506 and its access and update levels successfully
exported.
%ADASCR-I-PWEXP, Password 00110809 and its access and update levels successfully
exported.
%ADASCR-I-PWEXP, Password 09CD0000 and its access and update levels successfully
exported.
%ADASCR-I-PWEXP, Password 09CD09CD and its access and update levels successfully
exported.

%ADASCR-I-TERMINATED,   12-JAN-2017 16:17:30, elapsed time: 00:00:01

>adascr db=33 export=protections,file=(9,11)
%ADASCR-I-STARTED,      12-JAN-2017 16:17:55, Version 6.5.1.0 (Windows 64Bit)
%ADASCR-I-DBON, database 6 accessed online
%ADASCR-I-PREXP, Protection settings for file 9 successfully exported.
%ADASCR-I-PREXP, Protection settings for file 11 successfully exported.

%ADASCR-I-TERMINATED,   12-JAN-2017 16:17:55, elapsed time: 00:00:00

D:\ada_build\ada\v6_5>adascr db=33 export=value_criteria,file=9,password=*
%ADASCR-I-STARTED,      12-JAN-2017 16:18:30, Version 6.5.1.0 (Windows 64Bit)
%ADASCR-I-DBON, database 33 accessed online
adascr: target_architecture=(open_systems,high_order_byte_first)
adascr: file=9
adascr: password=09CD09CD
%ADASCR-I-SBVEXP, Security by value settings on file 9 for password 09CD09CD succ
essfully exported.
adascr: q
%ADASCR-I-TERMINATED,   12-JAN-2017 16:19:46, elapsed time: 00:01:16

ここで、ファイル scrout.txt を必要に応じて編集し、指定されたパスワードでエクスポートされたファイル以外のファイルを保護できます。

ここで、エクスポートされたテキストファイル scrout.txt を目的のターゲットプラットフォーム(この場合は UNIX プラットフォーム)にコピーします。次のステートメントで ADASCR を使用し、エクスポートされたセキュリティ設定をインポートします。

>adascr db=34 + < scrout.txt
%ADASCR-I-STARTED,      12-JAN-2017 17:16:59, Version 6.5.1.0 (Solaris 64Bit)
%ADASCR-I-DBON, database 34 accessed online
%ADASCR-I-PWINS, password "000009CD" inserted
%ADASCR-I-PWINS, password "00110203" inserted
%ADASCR-I-PWINS, password "00110304" inserted
%ADASCR-I-PWINS, password "00110506" inserted
%ADASCR-I-PWINS, password "00110809" inserted
%ADASCR-I-PWINS, password "09CD0000" inserted
%ADASCR-I-PWINS, password "09CD09CD" inserted
%ADASCR-I-FILPRO, protections (access 9, update 9) set for file 9
%ADASCR-I-FIELDPRO, protections (access 0, update 0) set for field ** in file 9
%ADASCR-I-FIELDPRO, protections (access 14, update 14) set for field AC in file 9

%ADASCR-I-FIELDPRO, protections (access 14, update 14) set for field AD in file 9

%ADASCR-I-FIELDPRO, protections (access 14, update 14) set for field BC in file 9

%ADASCR-I-FIELDPRO, protections (access 14, update 0) set for field FC in file 9
%ADASCR-I-FIELDPRO, protections (access 14, update 0) set for field FD in file 9
%ADASCR-I-FIELDPRO, protections (access 14, update 0) set for field IC in file 9
%ADASCR-I-FIELDPRO, protections (access 14, update 0) set for field ID in file 9
%ADASCR-I-FILPRO, protections (access 1, update 2) set for file 11
%ADASCR-I-FIELDPRO, protections (access 0, update 0) set for field ** in file 11
%ADASCR-I-FIELDPRO, protections (access 6, update 9) set for field AA in file 11
%ADASCR-I-FIELDPRO, protections (access 3, update 9) set for field AC in file 11
%ADASCR-I-FIELDPRO, protections (access 5, update 7) set for field AE in file 11
%ADASCR-I-FIELDPRO, protections (access 4, update 8) set for field AD in file 11
%ADASCR-I-FIELDPRO, protections (access 10, update 12) set for field AI in file 1
1
%ADASCR-I-FIELDPRO, protections (access 10, update 12) set for field AJ in file 1
1
%ADASCR-I-FIELDPRO, protections (access 10, update 12) set for field AK in file 1
1
%ADASCR-I-FIELDPRO, protections (access 10, update 12) set for field AL in file 1
1
%ADASCR-I-FIELDPRO, protections (access 7, update 9) set for field AR in file 11
%ADASCR-I-FIELDPRO, protections (access 7, update 9) set for field AS in file 11
%ADASCR-I-FIELDPRO, protections (access 7, update 9) set for field AT in file 11
%ADASCR-I-FIELDPRO, protections (access 11, update 13) set for field AX in file 1
1
%ADASCR-I-FIELDPRO, protections (access 11, update 13) set for field AY in file 1
1
%ADASCR-I-FIELDPRO, protections (access 8, update 10) set for field AZ in file 11

%ADASCR-I-SEVINS, Value criteria for file 9 added to password "09CD09CD"

%ADASCR-I-TERMINATED,   12-JAN-2017 17:17:00, elapsed time: 00:00:01

ADASCR の DISPLAY 制御パラメータを使用して、インポートされたセキュリティ設定を確認できます。

adascr
adascr: dbid=34 display=passwords

List of defined passwords for Database 34 ("GENERAL_DATABASE")

MYSECRET

Total of 1 defined password

adascr: dbid=34 display=permissions,password=MYSECRET

password : "MYSECRET"


 FILE | ACCESS | UPDATE
-----------------------
    1 |     Y  |    Y
    2 |     Y  |    Y
    3 |     Y  |    Y
    9 |    (Y) |   (Y)
   11 |     N  |    N
   12 |    (Y) |   (Y)
   13 |    (Y) |   (Y)
   14 |     N  |    N
-----------------------

( ) Further value restrictions apply where brackets shown.


adascr: db=34 display=protections,file=(9,12,13)


FILE | ACCESS | UPDATE
-----------------------
   9 |      7 |     11
  12 |      2 |      2
  13 |      4 |      4
-----------------------

adascr: db=34 display=value_criteria,password=MYSECRET


password : "MYSECRET"

| File | Security by Value criterion
|------+----------------------------------------------------------------------
|    9 | ACCESS_CRITERION
|      |   SEARCH_BUFFER: "AZ,2,GE."
|      |   VALUE_BUFFER:  "FR"
|      | UPDATE_CRITERION
|      |   SEARCH_BUFFER: "AH,8,GE,D,AH,8,LE,D,AA,8,LE. "
|      |   VALUE_BUFFER:  "195201011952020160000000"
|   12 | ACCESS_CRITERION
|      |   SEARCH_BUFFER: "AM,3,GE."
|      |   VALUE_BUFFER:  0x33000C
|      | UPDATE_CRITERION
|      |   SEARCH_BUFFER: "AM,3,GE."
|      |   VALUE_BUFFER:  0x50000C
|   13 | ACCESS_CRITERION
|      |   SEARCH_BUFFER: "B0,GE."
|      |   VALUE_BUFFER:  0x01000000
|      | UPDATE_CRITERION
|      |   SEARCH_BUFFER: "B0,3,GE."
|      |   VALUE_BUFFER:  0xFF0201
|-----------------------------------------------------------------------------

INSERT

INSERT {=|:} string, FILE = (number[-number][,number[-number]]...)
         ,ACCESS = (number[,number]...)
         ,UPDATE = (number[,number]...)

この機能は、"string" で指定したパスワードをパスワードテーブルに挿入します。

等号を指定する場合、「文字列」に指定された値が大文字に変換されます。コロンを指定した場合、大文字の変換は実行されません。

パスワードは 1~8 文字です。指定された文字列が 8 文字未満の場合、末尾に空白が追加されます。パスワードに特殊文字や空白を含めることはできません。

ACCESS = (number[,number]...)

ACCESS パラメータは、FILE パラメータで指定したファイルやファイル範囲に関連するアクセスプロテクションレベルを指定します。各プロテクションレベルは 1 つのファイルまたは 1 つのファイル範囲に対応します。指定可能な値の範囲は 0~14 です。プロテクションレベルは、FILE パラメータの対応するファイルまたはファイル範囲と同じ順序で指定する必要があります。

FILE = (number[-number[,number[-number]]...)

FILE パラメータは、権限レベルを付与するファイルのリストまたは範囲を指定します。同一のファイル番号を複数回指定することはできません。

UPDATE = (number[,number]...)

UPDATE パラメータは、FILE パラメータに指定したファイルやファイル範囲に関連する更新プロテクションレベルを指定します。各プロテクションレベルは 1 つのファイルまたは 1 つのファイル範囲に対応します。指定可能な値の範囲は 0~14 です。プロテクションレベルは、FILE パラメータの対応するファイルまたはファイル範囲と同じ順序で指定する必要があります。

adascr: insert=userpwx, file=(1,2,3),
                 access=(7,7,7), update=(0,8,8)      

adascr: insert=userpwy, file=(1,2,3),                  
                 access=(7,2,2), update=(8,0,0)     

adascr: insert=userpwz, file=(1-3,5),                  
                 access=(2,3), update=(4,6)

PROTECT

PROTECT = (number[-number][,number[-number]]...)
          [,NAME = (field_name [, field_name] …)]
          ,ACCESS = (number[,number]...)
          ,UPDATE = (number[,number]...)

この機能は、指定したファイルまたはファイル内のフィールドのアクセスプロテクションレベルや更新プロテクションレベルを挿入(または更新)します。

  • NAME が指定されていない場合は、ファイルのプロテクションレベルが定義されます。同一のファイル番号を複数回指定することはできません。

  • NAME が指定されている場合は、フィールドのプロテクションレベルが定義されます。NAME の指定は、単一のファイル番号が指定されている場合にのみ許可されます。同一のフィールド名は複数回指定できません。グループまたはピリオディックグループの名前が指定されている場合は、指定されたフィールドプロテクションレベルが、フィールド名のリストで指定されていないグループ/ピリオディックグループのすべてのコンポーネントフィールドに設定されます。グループまたはピリオディックグループのコンポーネントとして明示的にも暗黙的にも指定されていないフィールドの場合、フィールドプロテクションレベルは変更されません。

  • ファイルおよびフィールドのプロテクションレベルのデフォルトは、アクセスプロテクションレベル 0 および更新プロテクションレベル 0 です。

ACCESS = (number[,number]...)

指定可能な値の範囲は 0~15 です。

  • NAME が指定されていない場合、UPDATE パラメータは、PROTECT パラメータで指定したファイルに関連付けられる更新プロテクションレベルを指定します。各プロテクションレベルは 1 つのファイルまたは 1 つのファイル範囲に対応します。プロテクションレベルは、PROTECT パラメータの対応するファイルまたはファイル範囲と同じ順序で指定する必要があります。指定する値の数は、PROTECT パラメータ内のファイルまたはファイル範囲の数と同じになっている必要があります。

  • NAME が指定されている場合、UPDATE パラメータは、NAME で指定したフィールドに関連付けられる更新プロテクションレベルを指定します。各プロテクションレベルは 1 つのフィールド名に対応します。プロテクションレベルをファイルのプロテクションレベルよりも低く設定すると、ファイルプロテクションレベルが実際のフィールドプロテクションレベルになります。プロテクションレベルは、NAME パラメータの対応するフィールド名と同じ順序で指定する必要があります。指定する値の数は、NAME パラメータのフィールド名の数と同じになっている必要があります。

INSERT 機能で使用される更新プロテクションレベルの最大値は 14 であるのに対して、PROTECT パラメータでは最大値は 15 です。したがって、UPDATE=15 を指定したファイルまたはフィールドは、いかなるユーザーも更新できなくなります。

UPDATE = (number[,number]...)

指定可能な値の範囲は 0~15 です。

  • NAME が指定されていない場合、ACCESS パラメータは、PROTECT パラメータで指定したファイルに関連付けられるアクセスプロテクションレベルを指定します。各プロテクションレベルは 1 つのファイルまたは 1 つのファイル範囲に対応します。プロテクションレベルは、PROTECT パラメータの対応するファイルまたはファイル範囲と同じ順序で指定する必要があります。指定する値の数は、PROTECT パラメータ内のファイルまたはファイル範囲の数と同じになっている必要があります。

  • NAME が指定されている場合、ACCESS パラメータは、NAME で指定したフィールドに関連付けられるアクセスプロテクションレベルを指定します。各プロテクションレベルは 1 つのフィールド名に対応します。プロテクションレベルをファイルのプロテクションレベルよりも低く設定すると、ファイルプロテクションレベルが実際のフィールドプロテクションレベルになります。プロテクションレベルは、NAME パラメータの対応するフィールド名と同じ順序で指定する必要があります。指定する値の数は、NAME パラメータのフィールド名の数と同じになっている必要があります。

PROTECT 機能で使用されるアクセスプロテクションレベルの最大値は 15 であるのに対して、INSERT 機能では最大値は 14 です。したがって、ACCESS=15 を指定したファイルまたはフィールドには、いかなるユーザーもアクセスできなくなります。

adascr: protect=25,access=7,update=11
adascr: protect=25,name=(AA,AB,AC),access=(6,8,7),update=(14,13,12)
adascr: protect=(1,2,3),access=(7,7,7),update=(8,8,8)
adascr: protect=(4-6),access=10,update=12

2 番目の例で、AA はエレメンタリフィールド、AB はエレメンタリフィールド AC、AD、AE で構成されるグループであると仮定します。このとき、プロテクションレベルは次の表のようになります。

  フィールド AA グループ AB
フィールド AC フィールド AD フィールド AE
アクセスプロテクションレベル 6 7 8 8
更新プロテクションレベル 14 12 13 13

ADADBM ユーティリティの RENUMBER 機能を実行すると、セキュリティ保護されたファイルのファイル番号が結果的に変更される場合、そのファイルのセキュリティプロテクションレベルを再設定するために PROTECT 機能を再実行する必要があります。パスワードも、変更前のファイル番号に関連付けられているため、再設定する必要があります。

SECURITY_BY_VALUE

SECURITY_BY_VALUE {=|:} string, FILE = number
                    ,ACCESS_CRITERION
                    ,SEARCH_BUFFER = string *
                    ,VALUE_BUFFER = string *
                    ,UPDATE_CRITERION
                    ,SEARCH_BUFFER = string *
                    ,VALUE_BUFFER = string *

* サーチ/アクセスバッファ文字列パラメータの後には、途中にコンマを付けずに、すぐに <新規行> を続ける必要があります。

この機能は、"string" で指定したパスワードに対する特定のファイルのセキュリティバイバリューを挿入(または更新)します。パスワードは、INSERT 機能を使用して事前にセキュリティファイルに挿入されている必要があります。各パスワードは、最高 99 ファイルに対して定義されたセキュリティバイバリュー条件を持つことができます。

等号を指定する場合、「文字列」に指定された値が大文字に変換されます。コロンを指定した場合、大文字の変換は実行されません。

ACCESS_CRITERION

指定したパスワードを使ってデータへのアクセスを制限する場合には、ACCESS_CRITERION キーワードをサーチバッファおよびバリューバッファの前に指定し、制限する条件を定義する必要があります。

アクセスバリュー条件を指定するために、ファイルの ACCESS パスワード権限レベル(つまりゼロ以外)も事前に設定しておく必要があります。レベルを設定していない場合、ACCESS_CRITERION キーワードを指定できません。

FILE = number

FILE パラメータは、バリュー条件を定義するファイルを指定します。必ず 1 ファイルだけを指定します。また、そのファイルはデータベースに現在ロードされている必要があります。

UPDATE_CRITERION

指定したパスワードを使ってデータの更新を制限する場合には、UPDATE_CRITERION キーワードをサーチバッファおよびバリューバッファの前に指定し、制限する条件を定義する必要があります。

更新バリュー条件を指定するために、ファイルの UPDATE パスワード権限レベル(つまりゼロ以外)も事前に設定しておく必要があります。レベルを設定していない場合、UPDATE_CRITERION キーワードを指定できません。

SEARCH_BUFFER = string

SEARCH_BUFFER パラメータを使用して、アクセス/更新条件に対する検索式を指定します。サーチバッファの指定例および構文については、『コマンドリファレンスマニュアル』の「Adabas の呼び出し」の「サーチバッファとバリューバッファ」を参照してください。

セキュリティバイバリュー条件に使用する場合、一定の制限がサーチバッファに適用され、ソフトカップリング、サブディスクリプタ、スーパーディスクリプタ、ハイパーディスクリプタ、およびフォネティックディスクリプタはサポートされなくなります。

必要な条件が、制限の適用が不要なものである場合、関連するサーチバッファには次のように、終端を表す文字だけを指定してください。

SEARCH_BUFFER = .

この場合、VALUE_BUFFER パラメータは必要ないので、指定しないでください。

VALUE_BUFFER = string

VALUE_BUFFER パラメータを使用して、先行するサーチバッファに指定したアクセス/更新条件の検索式に対応する値を指定します。文字列は、英数字文字列として、または 16 進表記の文字列として直接指定することができます。

adascr: security_by_value=fortytwo, file=10,
        access_criterion, search_buffer=CA,4,U,LT.
adascr: value_buffer=1707 
adascr: update_criterion, search_buffer=A,4,S,CA,4,D,AA,O,AA.
adascr: value_buffer=01001599MS

adascr: security_by_value=g6mon, file=3
adascr: access_criterion, search_buffer=.
adascr: update_criterion, search_buffer=AC,3.
adascr: value_buffer=HAM

指定したファイルのアクセスまたは更新プロテクションレベルがゼロの場合、そのファイルのレコードをアクセス/更新するためにパスワードが使用されても、関連するバリュー条件はテストされません。