コード例 #1
0
        private List <ITisDefinedPermissionsSet> ObtainCurrentRolePermissions(object oSecuredEntity,
                                                                              out bool bIsByPassMode)
        {
            List <ITisDefinedPermissionsSet> permissions = new List <ITisDefinedPermissionsSet>();

            ITisRole[] oCurrentRoles = CurrentRoles;

            bIsByPassMode = IsByPassMode(oCurrentRoles);

            if (!bIsByPassMode)
            {
                foreach (ITisRole currentRole in oCurrentRoles)
                {
                    ITisDefinedPermissionsSet rolePermissions =
                        currentRole.Permissions.ObtainPermissionsSet(oSecuredEntity);

                    if (rolePermissions != null)
                    {
                        permissions.Add(rolePermissions);
                    }
                }
            }

            return(permissions);
        }
コード例 #2
0
        internal void PostPersistKeyChange(object oSecuredEntity, string sOldPersistKey)
        {
            ITisDefinedPermissionsSet oPermissionsSet = ObtainPermissionsSet(sOldPersistKey);

            if (oPermissionsSet != null)
            {
                string sNewPersistKey = m_oPermissionMngr.GetPersistKey(oSecuredEntity);

                m_oPermissionMngr.ReplacePersistKey(sOldPersistKey, sNewPersistKey);
            }
        }
コード例 #3
0
        public string[] ObtainAllowedPermissions(object oSecuredEntity)
        {
            List <string> allowedPermissions = new List <string>();

            ITisRole[] currentRoles = CurrentRoles;

            foreach (ITisRole role in currentRoles)
            {
                ITisDefinedPermissionsSet rolePermissions =
                    role.Permissions.ObtainPermissionsSet(oSecuredEntity);

                foreach (string permission in rolePermissions.DefinedPermissions.Names)
                {
                    if (!allowedPermissions.Contains(permission))
                    {
                        allowedPermissions.Add(permission);
                    }
                }
            }

            return(allowedPermissions.ToArray());
        }
コード例 #4
0
 void ITisRolePermissions.RemoveBySet(ITisDefinedPermissionsSet oPermissionsSet)
 {
     (this as ITisRolePermissions).RemoveBySets(
         new ITisDefinedPermissionsSet[] { oPermissionsSet });
 }