| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
-
- namespace System.ServiceModel.Configuration
- {
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Configuration;
- using System.IdentityModel.Claims;
- using System.IdentityModel.Policy;
- using System.Net;
- using System.ServiceModel.Channels;
- using System.ServiceModel;
- using System.ServiceModel.Description;
- public sealed partial class ServiceAuthenticationElement : BehaviorExtensionElement
- {
- public ServiceAuthenticationElement()
- {
- }
- [ConfigurationProperty(ConfigurationStrings.ServiceAuthenticationManagerType, DefaultValue = "")]
- [StringValidator(MinLength = 0)]
- public string ServiceAuthenticationManagerType
- {
- get { return (string)base[ConfigurationStrings.ServiceAuthenticationManagerType]; }
- set
- {
- if (String.IsNullOrEmpty(value))
- {
- value = String.Empty;
- }
- base[ConfigurationStrings.ServiceAuthenticationManagerType] = value;
- }
- }
- [ConfigurationProperty(ConfigurationStrings.AuthenticationSchemes, DefaultValue = AuthenticationSchemes.None)]
- [StandardRuntimeFlagEnumValidator(typeof(AuthenticationSchemes))]
- public AuthenticationSchemes AuthenticationSchemes
- {
- get { return (AuthenticationSchemes)base[ConfigurationStrings.AuthenticationSchemes]; }
- set
- {
- base[ConfigurationStrings.AuthenticationSchemes] = value;
- }
- }
- public override Type BehaviorType
- {
- get { return typeof(ServiceAuthenticationBehavior); }
- }
- protected internal override object CreateBehavior()
- {
- ServiceAuthenticationBehavior behavior = new ServiceAuthenticationBehavior();
- string serviceAuthenticationManagerType = this.ServiceAuthenticationManagerType;
- if (!String.IsNullOrEmpty(serviceAuthenticationManagerType))
- {
- Type type = Type.GetType(serviceAuthenticationManagerType, true);
- if (!typeof(ServiceAuthenticationManager).IsAssignableFrom(type))
- {
- throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ConfigurationErrorsException(
- SR.GetString(SR.ConfigInvalidServiceAuthenticationManagerType, serviceAuthenticationManagerType, typeof(ServiceAuthenticationManager))));
- }
- behavior.ServiceAuthenticationManager = (ServiceAuthenticationManager)Activator.CreateInstance(type);
- }
- if (this.AuthenticationSchemes != AuthenticationSchemes.None)
- {
- behavior.AuthenticationSchemes = this.AuthenticationSchemes;
- }
- return behavior;
- }
- }
- }
|