OSF DCE Application Development Guide--Core Components
OSF DCE Application Development Guide—Core Components
Following are descriptions of the fields:
• The ACL entry_type specifies an ACL entry type as described in the previous list.
• The key field specifies the privilege attribute to which the permissions listed in the
entry apply. The key field for the ACL entry types user, group, foreign_user,
foreign_group, and foreign_other explicitly names a principal, group, or cell. For
the entry types foreign_user, foreign_group, and foreign_other, the key field must
contain a global DCE pathname of the forms /.../cellname/principalname,
/.../cellname/groupname,or /.../cellname, respectively. The entry types user_obj,
group_obj, other_obj, and any_other do not use the key field.
• The permissions field lists the permissions that may be granted to the principal
possessing the privilege attribute specified in the entry, unless a mask (or masks)
further restricts the permissions that may be granted to the principal. As noted
previously, the number and meaning of the permissions that may protect an object
are defined by the object’s ACL manager type. Therefore, the permissions that an
ACL entry may specify must be the set, or a subset, of the permissions implemented
by the manager type of the ACL in which the entry appears.
A principal is denied access when a user or foreign_user entry that names the
principal contains an empty permission set.
24.1.4.2 Mask Entry Types
Following are descriptions of the ACL entry types that specify masks:
• mask_obj
The mask_obj entry establishes the permission set that masks all privilege attribute
entry types except the user_obj and other_obj types.
• unauthenticated
The unauthenticated entry establishes the permission set that masks the permission
set in a privilege attribute entry that corresponds to a principal whose privilege
attributes have not been certified by an authority such as the privilege service.
The two masks are similar in that the permission set specified in the mask entry is
intersected (logically ANDed) with the permission set in a privilege attribute entry. This
masking operation yields the effective permission set (the permissions that may be
granted to the principal) for the principal possessing the privilege attribute. For example,
if a privilege attribute entry specifies the permissions ab, and a mask entry that specifies
the permissions bc masks that privilege attribute entry, the effective permission set is b.
Similarly, a mask entry that specifies the empty permission set means that none of the
permissions in any privilege attribute entry that mask entry masks is granted to the
principal possessing the privilege attribute.
The two masks are dissimilar in one notable respect. Adding an unauthenticated mask
entry with an empty permission set to an ACL is equivalent to omitting the
unauthenticated mask entry from the ACL; in both cases, the set of effective
permissions for principals possessing unauthenticated privilege attributes is empty.
However, adding a mask_obj entry with an empty permission set to an ACL is different
24−6 Tandem Computers Incorporated 124245