EN JA
VACCESS_ACL_POSIX1E(9)
VACCESS_ACL_POSIX1E(9) FreeBSD Kernel Developer's Manual VACCESS_ACL_POSIX1E(9)

名称

vaccess_acl_posix1evnode パラメータを使用して POSIX.1e ACL アクセス管理決定を生成する

書式

#include < sys/param.h>
#include < sys/vnode.h>
#include < sys/acl.h>

int
vaccess_acl_posix1e( enum vtype type, uid_t file_uid, gid_t file_gid, struct acl *acl, accmode_t accmode, struct ucred *cred, int *privused);

解説

この呼び出しは POSIX.1e ACL 拡張で UNIX の任意のファイルの機密保護モデルのために論理を実装します。それは vnode タイプ type、所有している UID file_uid、所有している GID file_gid、ファイル acl のためのアクセス ACL、必要なアクセスモード accmode、要求される資格証明 cred と特権が呼び出しの成功した評価に必要であったかどうかを返すオプションの参照呼び出し (call-by-reference) int ポインタを受け付けます。 privused ポインタは、特権情報をに詳しくならないために呼び出し側によって NULL に設定されるか、または、それは特権が使用されているなら 1 に、そうでなければ 0 に設定される整数へのポインタです。

この呼び出しは、vnode の特性を検索してそれら自体のアクセス方法を使用し、次に実際のチェックを実行するために、 vaccess_acl_posix1e() を呼び出す VOP_ACCESS(9) の実装をサポートすることを目的としています。 VOP_ACCESS(9) の実装は、結果が返り値で構成される、追加のセキュリティメカニズムを実装することを選びます。

vaccess_acl_posix1e() によって使用されるアルゴリズムは POSIX.1e ACL 評価アルゴリズムに基づいています。アルゴリズムは、 UNIX セキュリティの互換性を提供して、利用可能な ACL マスクエントリで構成される、アクセス ACL から 適合する エントリを選択します。

いったん適切な保護が現在の資格証明のために選択されると、要求されたアクセスモードは、vnode タイプと組み合わせて、資格証明のための任意の権利が利用可能な状態で比較されます。任意の保護によって与えられた権利が不十分であるなら、スーパユーザ特権は、資格証明のために利用可能であるなら、また、考慮されます。

戻り値

vaccess_acl_posix1e() は成功すれば 0 を返すか、または、失敗すれば 0 以外のエラー値が返されます。

エラー

[ EACCES]
パーミッションは拒否されました。ファイルアクセスパーミッションで禁じられた方法でファイルにアクセスしようと試みました。
[ EPERM]
操作は許可されませんでした。適切な特権があるプロセス、または、ファイルか他のリソースの所有者に制限された操作を実行しようと試みました。

作者

このマニュアルページと vaccess_acl_posix1e() の現在の実装は、 Robert Watson によって書かれました。

バグ

このマニュアルページは、 POSIX.1e ACL 評価アルゴリズムの完全な解説を含むべきか、または別のページの相互参照が行われるべきです。
August 22, 2001 FreeBSD