private SecurityStrategyComplex GetSecurity(string authenticationName, object parameter)
        {
            AuthenticationMixed authentication = new AuthenticationMixed();

            authentication.LogonParametersType = typeof(AuthenticationStandardLogonParameters);
            authentication.AddAuthenticationStandardProvider(typeof(PermissionPolicyUser));
            authentication.AddIdentityAuthenticationProvider(typeof(PermissionPolicyUser));
            authentication.SetupAuthenticationProvider(authenticationName, parameter);
            SecurityStrategyComplex security = new SecurityStrategyComplex(typeof(PermissionPolicyUser), typeof(PermissionPolicyRole), authentication);

            security.RegisterXPOAdapterProviders();
            return(security);
        }
        public AuthenticationOwinAspNetApplication()
        {
            InitializeComponent();
            InitializeDefaults();
            AuthenticationMixed authenticationMixed = new AuthenticationMixed();

            authenticationMixed.LogonParametersType = typeof(AuthenticationStandardLogonParameters);
            authenticationMixed.AuthenticationProviders.Add(typeof(AuthenticationStandardProvider).Name, new AuthenticationStandardProvider(typeof(OAuthUser)));
            OAuthProvider authProvider = new OAuthProvider(typeof(OAuthUser), securityStrategyComplex1);

            authProvider.CreateUserAutomatically = true;
            authenticationMixed.AuthenticationProviders.Add(typeof(OAuthProvider).Name, authProvider);
            securityStrategyComplex1.Authentication = authenticationMixed;
        }
Exemple #3
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;
        }
Exemple #4
0
        private static void SecurityMixedAuthenticationWindowsFormsApplication_LoggingOn(object sender, LogonEventArgs e)
        {
            XafApplication      application         = (XafApplication)sender;
            AuthenticationMixed authenticationMixed = (AuthenticationMixed)((SecurityStrategyComplex)application.Security).Authentication;

            switch (((MixedLogonParameters)e.LogonParameters).AuthenticationType)
            {
            case AuthenticationType.Application:
                authenticationMixed.SetupAuthenticationProvider(typeof(AuthenticationStandardProvider).Name, e.LogonParameters);
                break;

            case AuthenticationType.Windows:
                authenticationMixed.SetupAuthenticationProvider(typeof(AuthenticationActiveDirectoryProvider).Name);
                break;
            }
        }