Пример #1
0
        private static void AuthenticationActiveDirectoryProvider_CustomCreateUser(object sender, CustomCreateUserEventArgs e)
        {
            AuthenticationActiveDirectoryProvider provider = (AuthenticationActiveDirectoryProvider)sender;
            CustomPermissionPolicyUser            user     = e.ObjectSpace.CreateObject <CustomPermissionPolicyUser>();

            user.UserName = e.UserName;
            user.IsActiveDirectoryUser = true;
            provider.CanInitializeNewUser.InitializeNewUser(e.ObjectSpace, user);
            e.User    = user;
            e.Handled = true;
        }
Пример #2
0
        public static void Setup(XafApplication application)
        {
            AuthenticationMixed mixedAuthentication = new AuthenticationMixed();

            mixedAuthentication.LogonParametersType     = typeof(MixedLogonParameters);
            mixedAuthentication.IsSupportChangePassword = true;
            CustomAuthenticationStandardProvider  authenticationStandardProvider        = new CustomAuthenticationStandardProvider(application.Security.UserType);
            AuthenticationActiveDirectoryProvider authenticationActiveDirectoryProvider = new AuthenticationActiveDirectoryProvider(application.Security.UserType, (ICanInitializeNewUser)application.Security, true);

            authenticationActiveDirectoryProvider.CustomCreateUser += AuthenticationActiveDirectoryProvider_CustomCreateUser;
            mixedAuthentication.AuthenticationProviders.Add(typeof(AuthenticationStandardProvider).Name, authenticationStandardProvider);
            mixedAuthentication.AuthenticationProviders.Add(typeof(AuthenticationActiveDirectoryProvider).Name, authenticationActiveDirectoryProvider);
            ((SecurityStrategyComplex)application.Security).Authentication = mixedAuthentication;
            application.LoggingOn += SecurityMixedAuthenticationWindowsFormsApplication_LoggingOn;
        }