예제 #1
0
        /// <summary>
        /// Gets a string representing a CSLA permissions policy
        /// </summary>
        /// <param name="action">Authorization action</param>
        /// <param name="objectType">Business object type</param>
        /// <returns></returns>
        public static string GetPolicy(Rules.AuthorizationActions action, Type objectType)
        {
            var actionName = action.ToString();
            var typeName   = objectType.AssemblyQualifiedName;

            return($"{PolicyPrefix}{actionName}|{typeName}");
        }
예제 #2
0
 /// <summary>
 /// Creates instance of type
 /// </summary>
 /// <param name="action">Authorization action</param>
 /// <param name="objectType">Business domain type</param>
 public HasPermissionAttribute(Rules.AuthorizationActions action, Type objectType)
     : base(CslaPolicy.GetPolicy(action, objectType))
 {
 }
예제 #3
0
 /// <summary>
 /// Creates an instance of the type.
 /// </summary>
 /// <param name="action">Authorization action</param>
 /// <param name="objectType">Business object type</param>
 public CslaPermissionRequirement(Rules.AuthorizationActions action, Type objectType)
 {
     Action     = action;
     ObjectType = objectType;
 }