1、角色分为两种类型: (1)role_表存储所有角色,其中 type_ = 1 表示是常规角色, type_=2 表示是 communities角色 (2)常规角色的 Actions 有:Permissions、Define Permissions、Assign Members、View Users; 而社区角色的 Actions 只有:Permissions、Define Permissions; (3)对于上述几个默认的角色,我们不能修改,也不能删除; 对于我们自己创建的角色,可以修改,可以删除; 2、为什么 Administrator 角色不需要 Define Permissions? 为什么社区角色 Community Member 能够 Define Permissions,而社区角色 Community Administrator 和 Community Owner 却不能 Define Permissions? Community Administrator、Community Owner 和 Administrator(Regular Role)一样,都不能定义权限;换句话说,这三个角色的权限,不需要存储在数据库的 Roles_Permissions 表中,在权限开发的时候就已经预定义好了,并保存在 XML 文件或资源文件中,那么究竟保存在哪里? 经过查找,不在资源文件中; 经过查找,也不在 XML 文件中,尚未解决 3、比较几个默认角色下的用户情况: (1)Administrator 角色: 查询语句: select * from dbo.Users_Roles where roleId = 10 查询结果: (2)Guest 角色: 查询语句: select * from dbo.Users_Roles w here roleId = 11 查询结果: (3)Pow er User 角色: 查询语句: select * from dbo.Users_Roles w here roleId = 12 查询结果: (4)User 角色: 查询语句: select * from dbo.Users_Roles w here roleId = 13 查询结果: (5)Community Administrator 角色: 查询语句: select UserGroupRole.userId, Group_.name, Role_.name, Role_.type_ from UserGroupRole, Group_, Role_ where UserGroupRole.groupId = Group_.groupId and UserGroupRole.roleId = Role_.roleId 查询结果: (6)Community Member 角色:见(5) (7)Community Owner 角色:见(6) 总结: (1)新增一个用户后,会默认被指派给角色:Power User 和User,如下图所示: (2)表Users_Roles 存储用户与Regular Role 的信息; 表UserGroupRole 存储用户与Community Role 的信息; 4、比较几个默认角色下的默认权限情况: (1)Administrator 角色: 在【Enterpr...