authorize コマンド - リソースに対するアクセス権限の設定

AC 環境で該当
capamsc141
AC 環境で該当
authorize コマンドを使用して、リソースに対するアクセサのアクセス権限を変更できます。
このコマンドにより、リソースに関連付けられているアクセス制御リストが変更されます。変更されるアクセス制御リスト エントリは一度に 1 つです。
アクセサがリソースにアクセスしようとすると、
Privileged Access Manager
はアクセス権限を決定するために適切なアクセス制御リストをチェックします。チェック対象のアクセス制御リストはリソース レコードに記録されているもので、リソース グループ レコードに記録されているものが含まれることもあります。アクセサが対象リソースをカバーする NACL のいずれかでアクセス権限を拒否されている場合、別の ACL で権限が与えられても権限は拒否されます。
リソースの所有者には常に、そのリソースに対するすべてのアクセス権限が与えられます。所有者であるユーザのアクセス権限を変更するには、リソースの所有者を別のユーザ、たとえばユーザ nobody に変更します。
このコマンドは Windows 環境にもありますが、動作が異なります。
authorize コマンドを使用するユーザには、適切な権限が必要です。具体的には、以下の条件を 1 つ以上満たしている必要があります。
  • ADMIN 属性が割り当てられていること
  • リソースがメンバであるリソース グループに対して、GROUP-ADMIN 属性が割り当てられていること
  • リソースの所有者であること
  • リソースに対応する ADMIN クラス レコードの変更アクセス権限があること
authorize コマンドは、クラスのグループによって形式が異なります。クラスは以下のグループに分類されます。
  • TCP
  • HOST、GHOST、HOSTNET、および HOSTNP
  • その他すべてのクラス
TCP クラスが対象の場合のコマンド形式は以下のとおりです。
{authorize|auth} TCP tcpServiceName \ [{access|deniedaccess}(accessType)] \ {[ghost(ghostName [,ghostName]...)] | \ [host(hostName [,hostName]...)] | \ [hostnet(hostNetName [,hostNetName]...)] | \ [hostnp(hostNamePattern [,hostNamePattern]...)]} \ [{gid|uid|xgid|xuid}(accessor [,accessor]...])] ...
HOST、GHOST、HOSTNET、および HOSTNP クラスタが対象の場合のコマンド形式は以下のとおりです。
{authorize|auth} {HOST|GHOST|HOSTNET|HOSTNP} stationName [{access|deniedaccess}(accessType)] \ service({serviceName|serviceNumber|serviceNumberRange})
その他すべてのクラスの場合の形式は以下のとおりです。
{authorize|auth} classNameresourceName \ [{access|deniedaccess}(accessType)] \ [calendar(calendarName)] \ [{unix|nt}]\ [via (pgm ( program [,program]...))] \ { gid | uid | xgid | xuid}(accessor [,accessor...]) ...
  • access (
    accessType)
    リソース アクセス制御リスト(ACL)のアクセス権限エントリを定義します。この ACL には、どのアクセス権限がアクセサに与えられるかを指定します。
    • accessType
      アクセス タイプ(read や write など)をリソース ACL に定義します。
    authorize コマンドで access(
    accessType
    ) オプションと deniedaccess(
    accessType
    ) オプションをどちらも省略した場合、
    Privileged Access Manager
    は、UACC クラスにあるリソース クラスのレコード(リソースがファイルの場合は UACC ファイル レコード)の暗黙のアクセス プロパティで指定されるアクセス権を割り当てます。
  • calendar(
    calendarName
    )
    アクセス権限を決定するために使用するカレンダを指定します。
  • className
    resourceName
    の所属先クラスを定義します。
  • deniedaccess(
    accessType)
    リソース NACL に指定されているアクセス権限を変更します。NACL には、アクセサに対してどのアクセス タイプを拒否するかを指定します。
    • accessType
      拒否するアクセス タイプ(read や write など)を指定します。
  • gid (
    accessor
    [,
    accessor...
    ])
    アクセス権限の設定対象である内部グループを 1 つ以上定義します。
  • ghost(
    ghostName [,ghostName]...
    )
    TCP/IP サービスに対するアクセス権限の設定対象であるグループ ホストを 1 つ以上定義します。
  • host(
    hostName [,hostName]...
    )
    TCP/IP サービスに対するアクセス権限の設定対象であるホストを 1 つ以上定義します。
  • hostnet(
    hostNetName [,hostNetName]...
    )
    TCP/IP サービスに対するアクセス権限の設定対象である HOSTNET レコードを 1 つ以上定義します。
  • hostnp(
    hostNamePattern [,hostNamePattern]...
    )
    TCP/IP サービスに対するアクセス権限の設定対象である HOSTNP レコードを 1 つ以上定義します。
  • nt
    Windows のシステム ACL に値を追加するかどうかを指定します。
    FILE クラスに対してのみ有効です。
  • resourceName
    変更対象のアクセス制御リストを持つリソース レコードを指定します。
  • service(
    serviceName
    |
    serviceNumber
    |
    serviceNumberRange
    )
    ローカル ホストがリモート ホストに提供することが許されるサービスを指定します。
    serviceNumber |serviceNumberRange
    サービス番号またはサービス番号の範囲を指定します。
    範囲は 2 つの整数をハイフン(-)で区切って「1-99」のように指定します。
    制限:
    指定できる整数の範囲は 0 ~ 65535 です。
  • stationName
    指定されたクラスに属するレコード名を以下のように指定します。
    • HOST
      : 単一の端末の名前。
    • GHOST
      : ghost コマンドでデータベースに定義されたホストのグループの名前。
    • HOSTNET
      : IP アドレスのマスク値と一致値のセットで定義されたホストのグループの名前。
    • HOSTNP
      : 名前パターンで定義されたホストのグループの名前
    解決できないホストについては、IP アドレスの範囲を IPv4 または IPv6 形式で入力します。
  • tcpServiceName
    アクセス権限を設定する対象の
    Privileged Access Manager
    TCP サービス レコードを指定します。
  • uid (
    accessor
    [,
    accessor...
    ])
    アクセス権限の設定対象である内部ユーザを 1 つ以上定義します。
    アスタリスク(*)を使用してすべての内部ユーザを指定することができます。
  • unix
    UNIX のシステム ACL に値を追加するかどうかを指定します。
    ACL をサポートする UNIX 環境でのみ有効です。また、FILE クラスのレコードに対してのみ有効です。
  • via(pgm(
    programName [,programName]...
    ))
    条件付きプログラム アクセスの対象となるプログラムを 1 つ以上定義します。via パラメータは、リソースの PACL 内のエントリを指定します。
    programName
    は、リソースにアクセスできるプログラムを指定します。
    programName
    にはワイルドカード文字を使用できます。プログラムが PACL の複数のエントリと一致した場合、ワイルドカードとの不一致が最も長いエントリが優先されます。
    programName
    に PROGRAM クラスで定義されていないプログラムまたはシェル スクリプトを指定すると、
    Privileged Access Manager
    はそのプログラムまたはシェル スクリプトを保護する PROGRAM レコードを自動的に作成します。
  • xgid (
    accessor
    [,
    accessor...
    ])
    アクセス権限の設定対象であるエンタープライズ グループを 1 つ以上定義します。
  • xuid (
    accessor
    [,
    accessor...
    ])
    アクセス権限の設定対象であるエンタープライズ ユーザを 1 つ以上定義します。
例: Angela に対するファイル読み取りの許可
以下の selang コマンドは、エンタープライズ ユーザ Angela に対し、FILE リソース /projects/secrets で保護されているファイルの読み取りを許可します。
auth FILE /projects/secrets xuid(Angela) access(read)
例: Angela のみに対するファイル読み取りの許可
以下の selang コマンドは、エンタープライズ ユーザ Angela に対してのみ、FILE リソース /projects/secrets で保護されているファイルの読み取りを許可します。
auth FILE /projects/secrets xuid(Angela) access(read) auth FILE /projects/secrets defaccess (none) chres FILE /projects/secrets owner(nobody)
UNIX で、ファイルに関する情報を取得する操作(ls -l など)をユーザが実行できるかどうかを制御するために
read
権限が必要な場合は、STAT_intercept 構成設定を 1 に設定します。詳細については、「リファレンス ガイド
」を参照してください。
例: グループに属するすべてのユーザに対する端末へのログインの許可
以下の selang コマンドは、エンタープライズ グループ RESEARCH のすべてのメンバに対し、TERMINAL リソース
tty10
で保護されている端末へのログインを許可します。
auth TERMINAL tty10 xgid(RESEARCH) access(read)
例: Joe に対するファイルのバックアップの許可
以下の selang コマンドは、エンタープライズ ユーザ Joe に対し、GFILE リソース secret_files で保護されているファイルのバックアップを許可します。
auth GFILE secret_files xuid(Joe) \ via(pgm(/bin/backup)) access(read)
Windows エンドポイントに対する同等のコマンドは以下のとおりです。
auth GFILE secret_files xuid(Joe) \ via(pgm(C:\WINDOWS\system32\ntbackup.exe)) access(read)
これらのコマンドは、Joe のアクセス権限がリソースの ACL または NACL で規定されていない場合のみ有効です。