예제 #1
0
        /// <summary>
        /// The populate participant permission.
        /// </summary>
        private void PopulateParticipantPermissions()
        {
            var provider      = new DefaultPermissionProvider();
            var classKindType = ClassKind.GetType();

            provider.GetDefaultTypeNameParticipantPermissions()
            .Where(x => x.Value.Equals(ParticipantAccessRightKind.NONE))
            .ToList()
            .ForEach(x => {
                var participantPermission         = new ParticipantPermission(Guid.NewGuid(), null, null);
                participantPermission.AccessRight = x.Value;
                participantPermission.ObjectClass = (ClassKind)Enum.Parse(classKindType, x.Key);
                this.ParticipantPermission.Add(participantPermission);
            });
        }
예제 #2
0
        private static void ConfigureSecurity(HttpConfiguration config)
        {
            // Disable IIS or OWIN authentication modules/filters,
            //  we want to authenticate in WebApi regardless of previous authenticators.
            //  This call actually UnAuthenticates requests first! (removes previous IPrincipals)
            config.SuppressHostPrincipal();

            // Register a content policy enforcer handler
            var permissionProvider = new DefaultPermissionProvider();
            var policyMan          = new DefaultContentSecurityPoliciesController();

            policyMan.AddContentSecurityPolicy(new RolePermissionsPolicy(permissionProvider));
            config.MessageHandlers.Add(new DefaultContentControlMessageHandler(policyMan));

            // Authentication
            config.Filters.Add(new DefaultAuthenticator(permissionProvider));

            // Authorization
            config.Filters.Add(new DefaultIAuthorizer());
        }
 public void SetUp()
 {
     this.defaultPermissionProvider = new DefaultPermissionProvider();
 }