コード例 #1
0
 public SecurityException(int group, long permissions, string[] messages, IPermissionObject permissionObject = null)
 {
     this.PermissionGroup  = group;
     this.Permissions      = permissions;
     this.ErrorMessages    = messages;
     this.PermissionObject = permissionObject;
 }
コード例 #2
0
 private void ValidatePermissionObject(IPermissionObject expected, IPermissionObject actual)
 {
     Assert.AreEqual(expected.ID, actual.ID);
     Assert.AreEqual(expected.Name, actual.Name);
     Assert.AreEqual(expected.CodeName, actual.CodeName);
     Assert.AreEqual(expected.Description, actual.Description);
 }
コード例 #3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="obj"></param>
 public static void OutputPermissionInfo(IPermissionObject obj)
 {
     Console.WriteLine("ID={0}", obj.ID);
     Console.WriteLine("Name={0}", obj.Name);
     Console.WriteLine("CodeName={0}", obj.CodeName);
     Console.WriteLine();
 }
コード例 #4
0
 public SecurityException(int group, long permissions, int userId, IPermissionObject permissionObject = null)
 {
     this.PermissionGroup  = group;
     this.Permissions      = permissions;
     this.UserId           = userId;
     this.PermissionObject = permissionObject;
 }
コード例 #5
0
        public static PermissionObject <OT> ReadFrom(IPermissionObject source)
        {
            var obj = new PermissionObject <OT>();

            obj.Id   = source.GetId();
            obj.Type = (OT)(object)source.GetObjectType();
            return(obj);
        }
コード例 #6
0
        public static bool Authorize(IPermissionObject permission, bool includeStack = true, bool throwOnFailed = false)
        {
            var list = includeStack ? GetPermissionsFromStack() : new List <IPermissionObject>();

            if (permission != null)
            {
                list.Insert(0, permission);
            }
            var svr = HTB.DevFx.ObjectService.GetObject <IPermissionClientService>();

            return(svr == null || svr.Authorize(throwOnFailed, list.ToArray()));
        }
コード例 #7
0
        private static List <T> BuildObjectsFromTable <T>(DataTable table) where T : IPermissionObject
        {
            List <T> list = new List <T>();

            foreach (DataRow row in table.Rows)
            {
                IPermissionObject baseObject = OguPermissionSettings.GetConfig().PermissionObjectFactory.CreateObject(typeof(T));

                if (baseObject is PermissionObjBaseImpl)
                {
                    PermissionObjBaseImpl oBase = (PermissionObjBaseImpl)baseObject;
                    oBase.InitProperties(row);

                    list.Add((T)(oBase as object));
                }
            }

            return(list);
        }
コード例 #8
0
		/// <summary>
		/// 
		/// </summary>
		/// <param name="obj"></param>
		public static void OutputPermissionInfo(IPermissionObject obj)
		{
			Console.WriteLine("ID={0}", obj.ID);
			Console.WriteLine("Name={0}", obj.Name);
			Console.WriteLine("CodeName={0}", obj.CodeName);
			Console.WriteLine();
		}
コード例 #9
0
 public abstract bool HasPermission(int userId, IPermissionObject obj, int group, long permission, string[] conditions             = null);
コード例 #10
0
 public abstract Task <bool> HasPermissionAsync(int userId, IPermissionObject obj, int group, long permission, string[] conditions = null);
コード例 #11
0
 public abstract bool HasPermission(int userId, IPermissionObject obj, int group, long permission);
コード例 #12
0
 public abstract Task <bool> HasPermissionAsync(int userId, IPermissionObject obj, int group, long permission);
コード例 #13
0
		private void ValidatePermissionObject(IPermissionObject expected, IPermissionObject actual)
		{
			Assert.AreEqual(expected.ID, actual.ID);
			Assert.AreEqual(expected.Name, actual.Name);
			Assert.AreEqual(expected.CodeName, actual.CodeName);
			Assert.AreEqual(expected.Description, actual.Description);
		}