|
≫ |
|
|
|
HP OpenVMS DCL ディクショナリ
F$PRIVILEGE
現在のプロセス特権が,引数に指定されている特権と一致するかどうかに応じて, TRUE または FALSE という文字列値を戻します。特権の肯定形,および否定形のいずれも指定できます。
形式
F$PRIVILEGE (特権)
戻り値
TRUE または FALSE という値を含む文字列。
priv-states 引数にリストされた特権のうち 1 つでも偽があると, F$PRIVILEGE 関数は文字列 FLASE を戻します。
引数
特権特権,またはコンマ (,) で区切られた特権のリストを含む文字列を指定します。プロセス特権のリストについては,『OpenVMS システム・セキュリティ・ガイド』を参照してください。 [NO]ALL を除く,任意のプロセス特権を 1 つ指定します。
説明
F$PRIVILEGE 関数を使用して,ユーザの現在のプロセスに関する特権を識別します。
特権の前に "NO" が付いている場合は,関数が TRUE を戻すよう,その特権は無効になります。 F$PRIVILEGE 関数はリストのキーワードをそれぞれチェックし, 1 つでも偽があれば FALSE を戻します。
例
#1 |
$ PROCPRIV = F$PRIVILEGE("OPER,GROUP,TMPMBX,NONETMBX")
$ SHOW SYMBOL PROCPRIV
PROCPRIV = "FALSE"
|
この例では,F$PRIVILEGE 関数を使用して,プロセスが OPER 特権,GROUP 特権,および TMPMBX 特権を持っているか,またユーザが NETMBX 特権を持っていないかを調べています。
この例に示されているプロセスは,OPER ( オペレータ ) 特権,GROUP 特権, TMPMBX ( 一時メールボックス ) 特権,および NETMBX (ネットワーク・メールボックス) 特権のすべてを持っています。したがって,プロセスが NETMBX 特権を持っていますが, priv-state リストに NONETMBX が指定されているため, FALSE が戻されます。他の 3 つのキーワードの論理演算の結果は真ですが, NONETMBXの結果が偽であるため,この式全体は偽であると評価されます。
|