コード例 #1
0
        private ICredentials InitCredentials(ClientSecurityConfig securityConfig, GroupConfig groupConfig)
        {
            var credentials = securityConfig.GetCredentials();

            if (credentials == null)
            {
                var credentialsClassname = securityConfig.GetCredentialsClassName();
                if (credentialsClassname != null)
                {
                    try
                    {
                        var type = Type.GetType(credentialsClassname, true, false);
                        if (type != null)
                        {
                            credentials = Activator.CreateInstance(type) as ICredentials;
                        }
                    }
                    catch (Exception e)
                    {
                        throw ExceptionUtil.Rethrow(e);
                    }
                }
            }
            if (credentials == null)
            {
                credentials = new UsernamePasswordCredentials(groupConfig.GetName(), groupConfig.GetPassword());
            }
            return(credentials);
        }
コード例 #2
0
        private void ValidateSecurityConfig(ClientSecurityConfig securityConfig)
        {
            var configuredViaCredentials = securityConfig.GetCredentials() != null ||
                                           securityConfig.GetCredentialsClassName() != null;

            var factoryConfig = securityConfig.GetCredentialsFactoryConfig();
            var configuredViaCredentialsFactory = factoryConfig.GetClassName() != null ||
                                                  factoryConfig.GetImplementation() != null;

            if (configuredViaCredentials && configuredViaCredentialsFactory)
            {
                throw new ConfigurationException("Ambiguous Credentials config. Set only one of ICredentials or ICredentialsFactory");
            }
        }
コード例 #3
0
 public DefaultCredentialsFactory(ClientSecurityConfig securityConfig, GroupConfig groupConfig)
 {
     credentials = InitCredentials(securityConfig, groupConfig);
 }