Go to main content

マニュアルページ セクション 1: ユーザーコマンド

印刷ビューの終了

更新: 2018年8月8日
 
 

pfbash (1)

名前

pfexec, pfbash, pfcsh, pfksh, pfsh, pftcsh, pfzsh, pfksh93 - プロファイル内のコマンドの実行

形式

/usr/bin/pfexec command
/usr/bin/pfbash [ options ] [ 
argument ]...
/usr/bin/pfcsh [ options ] [ 
argument ]...
/usr/bin/pfksh [ options ] [ 
argument ]...
/usr/bin/pfsh [ options ] [ 
argument ]...
/usr/bin/pftcsh [ options ] [ 
argument ]...
/usr/bin/pfzsh [ options ] [ 
argument ]...
/usr/bin/pfksh93 [ options ] [ 
argument ]...
/usr/bin/pfrksh93 [ options ] [ 
argument ]...
/usr/bin/pfrksh [ options ] [ 
argument ]...
/usr/sunos/bin/pfksh [ options ] [ 
argument ]...
/usr/xpg4/bin/pfsh [ options ] [ 
argument ]...
/usr/bin/pfexec -P privspec
 command [ arg ]...

説明

pfexec プログラムは PRIV_PFEXEC プロセスフラグを設定し、現プロセスをプロファイルシェルとしてマークします。次に、指定されたコマンドを実行します。カーネルは exec_attr(5) データベースに照会し、適切な属性を使用して実行します。

プロファイルは、user_attr(5) データベース内のユーザーのエントリと policy.conf(5) に指定された順序で検索されます。ユーザーごとに、認証されたセットと認証されていないセットという、プロファイルの 2 つのセットがあります。ユーザーは、認証されたプロファイルのセットに対応する exec_attr(5) データベース内のエントリに一致するコマンドを実行する前に、再認証する必要があります。このコマンドが端末から実行された場合、PAM スタック /etc/pam.d/pfexec 内の pam_tty_tickets(7) に対して設定されたタイムアウトオプションに従って、現在のユーザーと tty の認証状態がキャッシュされます。現在の tty は存在しないが、アクティブな X11 セッションが存在する場合、ユーザーは zenity ダイアログを通して認証するよう求められます。現在のユーザーと DISPLAY 環境設定の認証状態がキャッシュされます。

正常に再認証されたプロセス (キャッシュのタイムアウト値内に暗黙的に認証されたプロセスを含む) は、以降の再認証から子プロセスを除外する追加のプロセスフラグ PRIV_PFEXEC_AUTH でマークされます。PRIV_PFEXEC フラグと PRIV_PFEXEC_AUTH フラグはどちらも、実 UID が変更されないかぎり、子プロセスによって継承されます。

認証されていないプロファイルのセットに一致するコマンドは、再認証する必要はありませんが、認証されたプロファイルのセット内のコマンドに比べて優先順位が低くなります。同じコマンドが複数のプロファイルに存在する場合、プロファイルシェルは最初に一致したエントリを使用します。

2 番目の形式 pfexec –P privspec を使用すると、ユーザーは、prof_attr(5) 内のユーザーのプロファイルに与えられた追加の特権を取得できます。コマンド行での特権の指定は、priv_str_to_set(3C) を使用して解析されます。その結果得られた特権と、該当ユーザーのすべてのプロファイルに対して prof_attr(5) privs キーワードで指定されている特権の和集合との間で、積集合をとった上で、その結果がコマンドの実行前に継承可能セットに追加されます。認証済み権利プロファイルから特権を取得できるのは、ユーザーがすでに正常に再認証されている場合のみです。

使用法

pfexec は、特定のユーザーまたはグループ ID など、定義済みのプロセス属性でコマンドを実行するために使用します。

プロファイルシェルの使用法の詳細は、sh(1)csh(1)、および ksh(1) のマニュアルページを参照してください。

使用例 1 追加ユーザー特権の取得
example% pfexec -P all chown user file

このコマンドは、現在のユーザーに割り当てられているすべての特権 (必ずしもすべての特権であるとは限らない) で chown user file を実行します。

終了ステータス

次の終了ステータスが返されます。

0

正常終了。

1

エラーが発生しました。

属性

属性についての詳細は、マニュアルページの attributes(7) を参照してください。

属性タイプ
属性値
使用条件
system/core-os

関連項目

bash (1) , csh(1), ksh(1), ksh88(1), profiles(1), sh(1), tcsh (1) , zsh (1) , exec_attr(5), prof_attr(5), user_attr(5), attributes(7)