nistbladm コマンドは NIS+ テーブルに種々の操作を行うことができます。これについては 「テーブルでの nistbladm コマンドの使用」にほとんどの説明があります。このコマンドは -c と -u の 2 つのオプションを使用してセキュリティ関連のタスクを実行できます。
-c オプション。nistbladm コマンドを使用して テーブルを作成する際に、-c オプションを使用すると最初の列アクセス権を指定できます。
-u オプション。-u オプションを nistbladm コマンドとともに使用すると、列アクセス権を変更できます。
テーブルが作成された時、列にはテーブルオブジェクトと同じ権利が付与されます。このテーブルレベルの権利は環境変数 NIS_DEFAULTS
で指定されるか、またはテーブルを作成したコマンドの一部で指定されます。nistbladm コマンドでテーブルを作成する際に -c オプションを使用すれば、最初の列アクセス権を指定できます。このオプションを使用するには、テーブルを作成しようとするディレクトリの作成権が必要です。テーブル作成時に列権利を指定するには、次のように入力します。
nistbladm -c type ` columname=[flags] [, access]... tablename' |
引数の意味はそれぞれ以下のとおりです。
type はテーブルの種類を示す文字列です。テーブルの type は何にでもできます。
columnname は列名です。
flags には、列の種類を指定します。使用できるフラグには次のものがあります。
S (検索可能)
I (大文字と小文字を区別しない)
C (暗号化)
B (2 進データ)
X (XDR 符号化データ)
access は、「コマンドによるアクセス権の指定」で説明した構文を使用したこの列のアクセス権です。
... はそれぞれの型と権利のセットを持った複数の列を指定できることを示しています。
tablename は完全指定名で表した作成しようとするテーブル名です。
テーブルを作成する際、列に独自の権利を付与するには、列の型とコンマの後の各列の等号記号にアクセス権を追加します。次のように、列をスペースで区切ります。
column=type,rights column=type,rights column=type,rights |
以下の例では、div 特性で depts という名前のテーブルが doc.com ディレクトリに作成されます。列は Name、Site および Manager の 3 つです。 第 2、第 3 列のグループには、変更権が追加されます。
rootmaster% nistbladm -c div Name=S Site=S,g+m Manager=S,g+m depts.doc.com. |
nistbladm -c オプションの詳細は、第 19 章「NIS+ テーブルの管理」を参照してください。
既存の NIS+ テーブルの列にアクセス権を追加するには、nistbladm -u オプション付きの nistbladm コマンドを使用します。このオプションを使用する場合、テーブル列の変更権が必要です。入力例を次に示します。
nistbladm -u [column= access,...],tablename |
引数の意味はそれぞれ以下のとおりです。
column は列名です。
access は、「コマンドによるアクセス権の指定」で説明した構文を使用したこの列のアクセス権です。
... は複数列のアクセス権を指定できることを示しています。
tablename は完全指定名で表した作成しようとするテーブル名です。
権利を更新する列ごとに column=access のペアを使用します。複数の列を更新するにはコンマ (,) で区切り全体を角括弧 ( []?) で囲みます。
[column=access, column=access, column=access] |
このオプションの完全な構文については、第 2 章「NIS+ の紹介」を参照してください。
次の例は、hosts.org_dir.doc.com. テーブルの name および addr 列のグループに、作成権と変更権を追加するものです。
client% nistbladm -u `[name=g+rm,addr=g+rm],hosts.org_dir..doc.com.' |
NIS+ テーブル列のアクセス権を削除するには、上記 「既存のテーブル列に権利を追加する」で説明したように -u オプションを使用します。ただし + 記号を使って権利を追加するのではなく、- 記号を使って権利を削除します。
次の例は、hosts.org_dir.doc.com. テーブルの hostname 列のグループの読み取り権と変更権を削除するものです。
client% nistbladm -u 'name=g-rm,hosts.org_dir.doc.com.' |