chfile コマンド - ファイル レコードの変更

AC 環境で該当
cminder12901jp
AC 環境で該当
FILE クラスに属するレコードに対する作業には、chfile、editfile、および newfile コマンドを使用します。 これらのコマンドは構造が同じですが、以下の点のみ異なっています。
  • chfile コマンドは、FILE クラスに属する 1 つ以上のレコードを
    変更
    します。
  • editfile コマンドは、FILE クラスに属する 1 つ以上のレコードを
    作成または変更
    します。
  • newfile コマンドは、FILE クラスに属する 1 つ以上のレコードを
    作成
    します。
注:
このコマンドはネイティブ環境にもありますが、動作が異なります。
FILE クラスに属するファイルのレコードを追加または変更するには、そのファイルに対する適切な権限が必要です。 以下の条件がチェックされ、いずれかの条件が満たされるとチェックは終了します。
  1. ADMIN 属性が割り当てられていること
  2. GROUP-ADMIN属性で管理者権限を与えられたグループの有効範囲内に、目的のリソース レコードが含まれていること
  3. レコードを変更する場合は、対象レコードの所有者であること
  4. ADMIN クラスの FILE レコードの ACL に CREATE アクセス権限(newfile または editfile の場合)または MODIFY アクセス権限(chfile の場合)が割り当てられていること
  5. seos.ini ファイルのトークン use_unix_file_owner が yes に設定されている場合は、ファイルの所有者であること(ネイティブ OS に存在する
    Privileged Identity Manager
    にファイルを定義する場合)。
{{chfile|cf}|{editfile|ef}|{newfile|nf}} filename... \
[audit{none|all|success|failure}] \ [category[-](categoryName)] \ [comment(string)|comment-] \ [defaccess(accessAuthority)] \ [label(labelName)|label-] \ [level(number)|level-] \ [notify(mailAddress)|notify-] \ [gowner(groupName)] \ [owner({userName|groupName})] \ [restrictions( \[days({anyday|weekdays|{[mon] [tue] [wed] \ [thu] [fri] [sat] [sun]}})] \[time({anytime|startTime:endTime}) \ |restrictions-] \ [warning|warning-]
  • audit{none|all|success|failure}
    ログに記録するアクセス イベントを指定します。 アクセス タイプは以下のとおりです。
    • all
      - 許可されたアクセスと検出された不正アクセスの試みの両方がログに記録されます。
    • failure
      - 検出された不正アクセスの試みがログに記録されます デフォルト値です。
    • none
      -レコードは、ログ ファイルに書き込まれません。
    • success
      - リソースに対して許可されたアクセスを記録します。
    注:
    audit パラメータを指定するには、AUDITOR 属性が必要です。
  • category(
    categoryName
    )
    ファイルに割り当てる、(CATEGORY クラスに定義されている)セキュリティ カテゴリ レコードのスペースまたはカンマで区切られたリストを定義します。
    CATEGORY クラスがアクティブでない場合に category パラメータを指定すると、データベース内のファイルの定義が更新されます。ただし、更新されたカテゴリの割り当ては、CATEGORY クラスを再度アクティブにするまでは有効になりません。
    注:
    セキュリティ カテゴリ チェックの詳細については、お使いの OS に対応する「
    エンドポイント管理ガイド
    」を参照してください。
  • category-(
    categoryName
    )
    リソース レコードから 1 つ以上のセキュリティ カテゴリを削除します。 複数のセキュリティ カテゴリを削除する場合は、各セキュリティ カテゴリ名をスペースまたはカンマで区切ります。
    指定したセキュリティ カテゴリは、CATEGORY クラスがアクティブかどうかに関係なく、リソース レコードから削除されます。
    注:
    このパラメータは、レコードを変更する場合にのみ有効です。
  • comment(
    string
    )
    英数文字列をグループ レコードに追加します。 グループ レコードにすでにコメント文字列が追加されている場合、既存の文字列はここで指定した新しい文字列に置き換えられます。
    形式:
    ダブル バイトおよび特殊文字を含めて 255 文字以内。 文字列に空白が含まれる場合は、文字列を一重引用符で囲みます。
  • comment-
    ファイル レコードからコメント文字列を削除します。
    注:
    このパラメータは、レコードを変更する場合にのみ有効です。
  • defaccess(
    accessAuthority
    )
    ファイルに対するデフォルトのアクセス権限を指定します。 デフォルトのアクセス権限は、ファイルのアクセス制御リストに含まれていないアクセサがファイルへのアクセスを要求した場合に与えられる権限です。 デフォルトのアクセス権限は、データベースに定義されていないユーザにも適用されます。
  • fileName
    ファイル レコードの名前を指定します。 ファイル名は、少なくとも 1 つ指定する必要があります。
    汎用ファイル名を使用して FILE クラスにレコードを追加する場合、またはレコードを変更する場合は、selang で許可されているワイルドカード式を使用します。 複数のレコードを定義または変更する場合は、ファイル名のリストを丸かっこで囲み、各ファイル名をスペースまたはカンマで区切ります。
    注:
    複数のファイル名が指定されている場合は、指定されたパラメータに基づいて各ファイル レコードが個別に処理されます。 ファイルの処理中にエラーが発生すると、メッセージが発行され、リストの次のファイルから処理が続行されます。
  • gowner(
    groupName
    )
    ファイル レコードの所有者としてグループを割り当てます。 ファイル レコードのグループ所有者には、ファイルに対する無制限のアクセス権が与えられます。ただし、前提として、グループ所有者のセキュリティ レベル、セキュリティ ラベル、およびセキュリティ カテゴリに、ファイルへのアクセスを許可する適切な権限が設定されている必要があります。 ファイルのグループ所有者には、ファイル レコードを更新および削除する許可が常に与えられます。
  • label(
    labelName
    )
    SECLABEL クラスに定義されているセキュリティ ラベルをファイルに割り当てます。 セキュリティ ラベルは、特定のセキュリティ レベルと 0 個以上のセキュリティ カテゴリとの関係を表します。 リソース レコードに現在セキュリティ ラベルが含まれている場合、現在のセキュリティ ラベルは、ここで指定したセキュリティ ラベルに置き換えられます。
    注:
    セキュリティ ラベル チェックの詳細については、お使いの OS に対応する「
    エンドポイント管理ガイド
    」を参照してください。
  • label-
    ファイル レコードに定義されているセキュリティ ラベルを削除します。
    注:
    このパラメータは、レコードを変更する場合にのみ有効です。
  • level(
    number
    )
    リソース レコードにセキュリティ レベルを割り当てます。 1 ~ 255 の正の整数を入力します。 リソース レコードにすでにセキュリティ レベルが割り当てられている場合、既存の値は新しい値に置き換えられます。
    注:
    セキュリティ レベル チェックの詳細については、お使いの OS に対応する「
    エンドポイント管理ガイド
    」を参照してください。
  • level-
    Privileged Identity Manager
    によるリソースのセキュリティ レベル チェックを停止します。
    注:
    このパラメータは、レコードを変更する場合にのみ有効です。
  • notify(
    mailAddress
    )
    リソース レコードが示すファイルへのアクセスが成功するたびに通知メッセージを送信するように指示します。 ユーザ名またはユーザの電子メール アドレスを入力します。また、別名が指定されている場合は、メール グループの電子メール アドレスも入力できます。
    通知は、ログ ルーティング システムがアクティブな場合にのみ行われます。 通知メッセージは、ログ ルーティング システムの設定に基づいて、ユーザの画面またはメールボックスに送信されます。
    通知メッセージが送信されるたびに、監査ログに監査レコードが書き込まれます。
    通知メッセージの受信者は、頻繁にログインして、各メッセージに示された不正アクセスの試みに対処する必要があります。
    制限:
    30 文字。
    注:
    監査レコードのフィルタ処理と表示の詳細については、お使いの OS に対応する「
    エンドポイント管理ガイド
    」を参照してください。
  • notify-
    レコードが示すファイルへのアクセスを許可する際に誰にも通知しないように指定します。
    注:
    このパラメータは、レコードを変更する場合にのみ有効です。
  • owner(
    Name
    )
    ファイル レコードの所有者としてユーザまたはグループを割り当てます。 ファイル レコードの所有者には、ファイルに対する無制限のアクセス権が与えられます。ただし、前提として、所有者のセキュリティ レベル、セキュリティ ラベル、およびセキュリティ カテゴリに、ファイルへのアクセスを許可する適切な権限が設定されている必要があります。 ファイルの所有者には、ファイル レコードを更新および削除する許可が常に与えられます。
  • restrictions(days(
    dayData
    ) time(
    timeData
    ))
    ユーザがファイルにアクセスできる曜日と時間帯を指定します。
    days 引数を指定せずに time 引数を指定した場合、レコード内にすでに設定されている曜日制限に対して、指定した時間帯制限が適用されます。 time 引数を指定せずに days 引数を指定した場合、レコード内にすでに設定されている時間帯制限に対して、指定した曜日制限が適用されます。 days 引数と time 引数の両方を指定した場合、指定した曜日の指定した時間帯にのみユーザはシステムにアクセスできます。
    • days
      (
      dayData
      )
      ユーザがファイルにアクセスできる曜日を指定します。 days 引数には以下のサブ引数があります。
      1. anyday
        - ユーザは曜日を問わずファイルにアクセスできます。
      2. weekdays
        - ユーザは月曜から金曜までの平日に限りリソースにアクセスできます。
      3. mon、tue、wed、thu、fri、sat、sun
        - 指定した曜日にのみリソースにアクセスできます。 曜日は任意の順で指定できます。 複数の曜日を指定する場合は、各曜日をスペースまたはカンマで区切ります。
    • time(
      timeData
      )
      ユーザがファイルにアクセスできる時間帯を指定します。 time 引数には以下のサブ引数があります。
      1. anytime
        - 特定の曜日の任意の時間帯にリソースにアクセスできます。
      2. startTime
        :
        endTime
        - 指定した時間帯にのみリソースにアクセスできます。
        startTime
        および
        endTime
        は両方とも
        hhmm
        の形式で指定します。
        hh
        は24時間表記の時間(00から23)、
        mm
        は分(00から59)を表します。 2400 は有効な Time 値ではないことに注意してください。
        startTime
        endTime
        より小さいこと、および両方が同じ日の時間であることが必要です。 端末がホストと異なるタイム ゾーンにある場合は、端末の開始時間と終了時間をホストのローカル時間に相当する時間に変換し、時間の値を調整してください。 たとえば、ホストがニューヨークにあり、端末がロサンゼルスにある場合、ロサンゼルスの端末からのアクセスを午前 8 時から午後 5 時まで許可するには、「time(1100:2000)」と指定します。 たとえば、ホストがニューヨークにあり、端末がロサンゼルスにある場合、ロサンゼルスの端末からのアクセスを午前 8 時から午後 5 時まで許可するには、「time(1100:2000)」と指定します。 たとえば、ホストがニューヨークにあり、端末がロサンゼルスにある場合、ロサンゼルスの端末からのアクセスを午前 8 時から午後 5 時まで許可するには、「time(1100:2000)」と指定します。
  • restrictions-
    ファイルに対するアクセス権限を限定するすべての曜日および時間帯の制限を削除します。
    注:
    このパラメータは、レコードを変更する場合にのみ有効です。
  • warning
    ファイルを警告モードにします。
  • warning-
    ファイルの警告モードを解除します。
例: スーパーユーザ以外のすべてのユーザに対し、ファイルへのアクセスを制限
スーパーユーザ以外のすべてのユーザに対する/etc/passwd ファイルへのアクセスを READ アクセスに制限するには、以下のコマンドを入力します。
chfile /etc/passwd defaccess(read) owner(root)
以下の条件が満たされている必要があります。
  • ADMIN 属性が割り当てられていること
  • データベースに /etc/passwd レコードが定義されていること
  • /etc/passwd レコードの ACL にエントリがないこと
例: 時間を指定してファイルへのアクセスを制限
/home/bob/secrets ファイルへのアクセスを防ぎ、所有者によるアクセスを平日の 08:00 ~ 18:00 に制限するには、以下のコマンドを入力します。
newfile /home/bob/secrets defac(none) restrictions(d(weekdays) t(0800:1800))
以下の条件が満たされている必要があります。
  • ADMIN 属性が割り当てられていること
  • Bob が ユーザであり、FILE クラスの /home/ bob/secrets レコードの所有者であること
例: ホーム ディレクトリへのアクセスの制限
自分以外のユーザがホーム ディレクトリ
/home/bob)のどのファイルにもアクセスできないようにするには、UNIX で以下のコマンドを入力します。
newfile /home/bob/* defaccess(none)
同じことを Windows では以下のコマンドで実行できます。
newfile %userprofile%\* defaccess(none)
以下の条件が満たされている必要があります。
  • 自分自身が
    Privileged Identity Manager
    に定義されていること
  • ファイルのネイティブ所有者であること