rolemod - システムにある役割のログイン情報の変更
rolemod [-u uid [ -o]] [-g group] [ -G [+|-]group [, group...]] [-d dir [-m]] [ -s shell] [-c comment] [-l new_name] [-f inactive] [-e expire] [-A [+|-]authorization [, authorization]] [-S repository] [-P [+|-]profile [, profile]] [-K key[+|-]= value][-q qualifier] role
rolemod ユーティリティーは、システムにある役割のログイン情報を変更します。指定されたログインの定義を変更し、システムファイルやファイルシステムにログイン関連の適切な変更を加えます。
このコマンドで作成されるシステムファイルエントリには、1 行あたり 512 文字の制限があります。複数のオプションに長い引数を指定すると、この制限を超える可能性があります。
既存の役割のセキュリティー属性を変更するには、管理者に User Security プロファイルが付与されている必要があります。既存のユーザーのセキュリティー属性以外の属性を変更するには、User Management プロファイルが必要です。passwd、shadow および user_attr の各種フィールドの設定に必要な承認については、passwd(4)、shadow(4)、および user_attr(4) を参照してください。グループの割り当てに必要な承認については、group(4) を参照してください。
サポートしているオプションは、次のとおりです。
auth_attr(4) で定義されている、コンマで区切られた 1 つ以上の承認。authorization の grant 権利を持っている役割だけが、それをアカウントに割り当てることができます。これにより、既存の承認設定はすべて置き換えられます。承認リストが指定されていない場合は、既存の設定が削除されます。
接頭辞 + は承認を既存の承認に追加します。 接頭辞 - は承認を既存の承認から削除します。 接頭辞を指定しない場合、authorization の値で既存の承認を置換します。
コメント文字列を指定します。comment には任意のテキスト文字列を指定できます。一般にはログインの簡単な説明文ですが、現在はユーザーのフルネームを表すフィールドとして使用されています。この情報は、ユーザーの /etc/passwd エントリに保存されます。
役割の新しいホームディレクトリを指定します。これは、デフォルトでは base_dir/login です。ここで base_dir は新しいログインホームディレクトリのベースディレクトリであり、login は新しいログインです。これにより、そのユーザーの auto_home エントリが作成または変更されます。
このオプションの引数は、server:dir として指定できます。ここで、server はホームディレクトリが存在するマシンのホスト名であり、dir はユーザーのホームディレクトリへのパスです。サーバーがリモートホストの場合、ユーザーのログイン時にシステムがホームディレクトリをマウントするために、リモートホストにホームディレクトリを作成する必要があります。–m オプションが指定されていて、サーバー名が指定されていない場合、ホームディレクトリはコマンドが実行されたホストに作成されます。
役割の有効期限日を指定します。この日付を過ぎると、どの役割もこのログインにアクセスできなくなります。expire オプション引数の日付は、テンプレートファイル /etc/datemsk に含まれている日付形式のいずれかを使用して入力します。getdate(3C) を参照してください。
たとえば、10/6/90 または October 6, 1990 と入力できます。`` '' の値によって、期限切れの日付のステータスが無効になります。
ログイン ID が無効と宣言される前に、そのログイン ID の使用の間に経過することが許される最大日数を指定します。通常は正の整数です。値 0 を指定すると、このステータスは無効になります。
既存のグループの整数 ID または文字列名を指定します。これにより、役割のプライマリグループメンバーシップが再定義されます。
既存グループのグループ ID (整数) または名前 (文字列) を指定します。新しいユーザーの補助グループメンバーシップを定義します。group が –g オプションと –G オプションで重複して指定されている場合、その項目は無視されます。指定できるグループの数は NGROUPS_MAX 以下です。0 から 99 の GID は、Solaris オペレーティングシステムによる割り当て用として予約されています。
接頭辞 + はグループを既存のグループに追加します。接頭辞 - はグループを既存のグループから削除します。 接頭辞を指定しない場合、group で既存のグループを置換します。
役割の既存の key=value ペア属性を置き換えるか、またはこれらの属性に追加します。複数の key=value ペアを置き換えるか、または追加するために、複数の –K オプションを使用できます。ただし、キーを繰り返さないでください。暗黙に指定される特定のキーオプション (–A および–P) の代わりに、汎用の –K オプションと適切なキーを使用できます。有効な key=value ペアのリストについては、user_attr(4) を参照してください。値を指定しないと、既存のキーが削除されます。
キーワード type には、値 role または値 normal を指定できます。値 normal を使用すると、アカウントが役割ユーザーから通常ユーザーに変わります。値 role を使用すると、アカウントは役割ユーザーのままです。
接頭辞 + は値を既存の値に追加します。 接頭辞 - は値を既存の値から削除します。 接頭辞を指定しない場合、value で既存の値を置換します。
接頭辞 +/- の操作は、キー auths、profiles、roles、project、limitpriv、defaultpriv、auth_profiles、および access_times にのみ適用可能です。
役割の新しいログイン名を指定します。new_logname 引数は、英字、数字、ピリオド (.)、下線 (_)、およびハイフン (-) のセットに含まれる文字から成る、8 バイト以下の文字列です。最初の文字は英字にし、フィールドには少なくとも 1 つの小文字の英字を含めるようにしてください。これらの制限が満たされていない場合は、警告メッセージが書き込まれます。Solaris の将来のリリースでは、これらの要件を満たさないログインフィールドは受け入れを拒否される可能性があります。new_logname 引数には少なくとも 1 文字が含まれている必要があり、コロン (:) や復帰改行 (\n) が含まれていてはいけません。
役割のホームディレクトリを、–d オプションで指定された新しいディレクトリに移動します。ディレクトリがすでに存在している場合、そこには group による読み取り権、書き込み権、および実行権が設定されている必要があり、ここで、group は役割のプライマリグループです。–d オプションに指定されたサーバー名がリモートホストの場合、システムはホームディレクトリの作成を試みません。
ディレクトリがまだ存在しない場合は、新しい ZFS データセットが作成されます。大域ゾーンでは、データセットは rpool/export/home/rolename として作成されます。非大域ゾーンでは、データセットは ROOT-dataset/export/home/rolename として作成されます。ZFS データセットのマウントポイントは、デフォルトでは /export/home/rolename です。–d path が指定され、それがローカルマシン上のパスである場合、データセットは指定された場所にマウントされます。ZFS スナップショットを作成してそれをプロモートするためのアクセス権が役割に委任されます。新しく作成されるデータセットは、その親から暗号化設定を継承します。暗号化されている場合は、そのラップ鍵を変更するためのアクセス権が役割に委任されます。
このオプションは、指定された UID を複製できるようにします (一意ではない)。
auth_attr(4) で定義されている、コンマで区切られた 1 つ以上の実行プロファイル。これにより、既存のプロファイル設定はすべて置き換えられます。プロファイルリストが指定されていない場合は、既存の設定が削除されます。
接頭辞 + はプロファイルを既存のプロファイルに追加します。 接頭辞 - はプロファイルを既存のプロファイルから削除します。 接頭辞を指定しない場合、profile で既存のプロファイルを置換します。
拡張された属性 (-K、-P、-A、および + -R で指定される) が適用される対象を修飾するホストまたはネットグループの名前。修飾子がネットグループ名であることを示すには、接頭辞 @ が必要です。–q オプションは、ユーザーアカウントが LDAP ネームサービスによって保持されている場合のみ有効です。
ログイン時の役割のシェルとして使用されるプログラムのフルパス名を指定します。shell の値は有効な実行可能ファイルでなければなりません。
有効なリポジトリは、files と ldap です。リポジトリは、更新するネームサービスを指定します。デフォルトのリポジトリは files です。リポジトリが files である場合、承認、プロファイル、および役割はほかのネームサービスリポジトリ内に存在することができ、また files リポジトリ内のユーザーに割り当てることができます。リポジトリが ldap の場合、割り当て可能な属性はすべて ldap リポジトリに存在している必要があります。
役割の新しい UID を指定します。この値は、<param.h> で定義されている MAXUID より小さい、負でない 10 進数の整数である必要があります。
次のオペランドがサポートされています。
変更される既存のログイン名。
次のコマンドは、root ユーザーを通常の非特権ユーザーに戻します。
# rolemod -K type=normal root Found user in files repository.
エラーが発生した場合、rolemod はエラーメッセージを出力し、次のいずれかの値で終了します。
行おうとした操作に必要な権限がありません。
コマンド構文が無効でした。usermod コマンドの使用法に関するメッセージが表示されます。
オプションに無効な引数が指定されました。
–u オプションで指定された gid または uid はすでに使用されています。
password ファイルと shadow ファイルが互いに整合していません。pwconv(1M) を使用すると、エラーを修正できる可能性があります。passwd(4) および shadow(4) を参照してください。
変更されるログインが存在しないか、gid または uid が存在しません。
group、passwd、または shadow ファイルがありません。
グループまたはユーザーの名前はすでに使用されています。
passwd、shadow、または user_attr ファイルを更新できません。
ホームディレクトリを移動するための容量が不足しています (–m オプション)。
新しいホームディレクトリを作成、削除、または移動できません。
要求されたログインはすでに使用されています。
予期しない失敗。
グループデータベースを更新できません。
プロジェクトデータベースを更新できません。
承認が不十分です。
役割がありません。
プロファイルがありません。
特権がありません。
ラベルがありません。
グループがありません。
システムで Trusted Extensions が実行されていません。
プロジェクトがありません。
auto_home を更新できません。
グループ定義を含むシステムファイル
日付形式のシステムファイル
システムパスワードファイル
ユーザーおよび役割の暗号化パスワードおよび関連情報を含むシステムファイル
追加のユーザーおよび役割属性を含むシステムファイル
属性についての詳細は、マニュアルページの attributes(5) を参照してください。
|
auths(1), chown(1), passwd(1), profiles(1), users(1B), groupadd(1M), groupdel(1M), groupmod(1M), logins(1M), pwconv(1M), roleadd(1M), roledel(1M), useradd(1M), userdel(1M), usermod(1M), getdate(3C), auth_attr(4), group(4), passwd(4), shadow(4), user_attr(4), attributes(5)