Exemplo n.º 1
0
 static FieldSecurityGroup()
 {
     Empty = new FieldSecurityGroup
     {
         AllowAnonymous = true,
     };
 }
Exemplo n.º 2
0
        /// <summary>
        /// Generates a security group from a given attribute container.
        /// </summary>
        /// <param name="attributedItem">The attributed item to build the group from.</param>
        /// <returns>SecurityGroup.</returns>
        public static FieldSecurityGroup FromAttributeCollection(ICustomAttributeProvider attributedItem)
        {
            var group = new FieldSecurityGroup
            {
                _requirements = attributedItem.GetCustomAttributes(true)
                                .Where(x => x is Attribute && x is IAuthorizeData)
                                .OfType <IAuthorizeData>()
                                .Select(x => new FieldSecurityPolicy(x)).ToList(),

                AllowAnonymous = attributedItem.GetCustomAttributes(true)
                                 .Any(x => x is Attribute && x is IAllowAnonymous),
            };

            return(group);
        }