UserFilter - infoplus/docs GitHub Wiki

UserFilter

  • 通过岗位、部门来表示一组用户的范围
  • 支持包含和排除(减号开头),排除优先

Syntax

  • UserFilters由多组UserFiler通过逗号分隔构成,组间为"或"的关系
UserFilters      <ExtendUserFilter> ("," <ExtendUserFilter> )*
ExtendUserFilter <UserFilter> | "-" <UserFilter>
UserFilter       <User> | <DeptPost> 
User             "::" (<UserID> | <Wildcard>)
DeptPost         <Dept> ":" <Post>
Dept             <DeptID> | <Wildcard> ( <DeptSuffix> )*
Post             <PostID> | <Wildcard> ( <PostSuffix> )*
DeptSuffix       "=" | "*" | "#" 
PostSuffix       "=" | "*" 
Wildcard         "*" | "#" 
  • Wildcard/通配符:
    • *所有部门所有岗位所有用户
    • #:正式岗
  • DeptSuffix/部门后缀:
    • *:含所有子部门(递归、默认)
    • =:仅当前部门
    • +:含所有非独立子部门(递归)
  • PostSuffix/岗位后缀:
    • *:含所有子岗位(递归、默认)
    • =:仅当前岗位

举例:

  • 范例部门树:

    • University(某某大学)
      • Computer(计算机学院,独立部门)
        • HW(硬件系)
        • SW(软件系)
      • History(历史学院,独立部门)
      • Office(校办公室)
  • 范例岗位列表:

    • Student(学生,身份岗)
    • Teacher(教师,身份岗)
    • Director(部门负责人,非身份岗)
UserFilter Explained
Computer 计算机系及其所有下属(软件系, 硬件系)的学生教师(仅身份岗)
Computer:# 同上
Computer*:# 同上
Computer:* 计算机系及其所有下属(软件系, 硬件系)的所有人员(学生教师部门负责人)
Computer=:Student 直接属于计算机系学生,不包含其下属部门下的学生
University+:Director 某某学校校办公室部门负责人,不包含计算机系的任何用户
:Teacher 所有教师
*:Teacher 同上
SW:Teacher,Computer:Teacher 计算机系及其所有下属部门的所有教师
SW:Student,History:Teacher 软件系的所有学生历史学院的所有教师
::007 用户ID为007的用户
::* 所有用户(Everyone)
Computer:Teacher,-SW:Teacher 计算机系及其所有下属部门的所有教师,排除软件系及其所有下属部门的教师
⚠️ **GitHub.com Fallback** ⚠️