Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Configuration / IssuedTokenClientElement.cs / 1 / IssuedTokenClientElement.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Configuration { using System; using System.ServiceModel; using System.ServiceModel.Description; using System.Collections.Generic; using System.Configuration; using System.ServiceModel.Security; using System.ServiceModel.Channels; using System.Xml; using System.Security.Principal; using System.Security.Cryptography.X509Certificates; using System.ComponentModel; using System.Security; public sealed partial class IssuedTokenClientElement : ConfigurationElement { public IssuedTokenClientElement() { } [ConfigurationProperty(ConfigurationStrings.LocalIssuer)] public IssuedTokenParametersEndpointAddressElement LocalIssuer { get { return (IssuedTokenParametersEndpointAddressElement)base[ConfigurationStrings.LocalIssuer]; } } [ConfigurationProperty(ConfigurationStrings.LocalIssuerChannelBehaviors, DefaultValue = "")] [StringValidator(MinLength = 0)] public string LocalIssuerChannelBehaviors { get { return (string)base[ConfigurationStrings.LocalIssuerChannelBehaviors]; } set { if (String.IsNullOrEmpty(value)) { value = String.Empty; } base[ConfigurationStrings.LocalIssuerChannelBehaviors] = value; } } [ConfigurationProperty(ConfigurationStrings.IssuerChannelBehaviors)] public IssuedTokenClientBehaviorsElementCollection IssuerChannelBehaviors { get { return (IssuedTokenClientBehaviorsElementCollection)base[ConfigurationStrings.IssuerChannelBehaviors]; } } [ConfigurationProperty(ConfigurationStrings.CacheIssuedTokens, DefaultValue = SpnegoTokenProvider.defaultClientCacheTokens)] public bool CacheIssuedTokens { get { return (bool)base[ConfigurationStrings.CacheIssuedTokens]; } set { base[ConfigurationStrings.CacheIssuedTokens] = value; } } [ConfigurationProperty(ConfigurationStrings.MaxIssuedTokenCachingTime, DefaultValue = SpnegoTokenProvider.defaultClientMaxTokenCachingTimeString)] [TypeConverter(typeof(TimeSpanOrInfiniteConverter))] [ServiceModelTimeSpanValidator(MinValueString = ConfigurationStrings.TimeSpanZero)] public TimeSpan MaxIssuedTokenCachingTime { get { return (TimeSpan)base[ConfigurationStrings.MaxIssuedTokenCachingTime]; } set { base[ConfigurationStrings.MaxIssuedTokenCachingTime] = value; } } [ConfigurationProperty(ConfigurationStrings.DefaultKeyEntropyMode, DefaultValue = System.ServiceModel.Security.AcceleratedTokenProvider.defaultKeyEntropyMode)] [ServiceModelEnumValidator(typeof(SecurityKeyEntropyModeHelper))] public SecurityKeyEntropyMode DefaultKeyEntropyMode { get { return (SecurityKeyEntropyMode)base[ConfigurationStrings.DefaultKeyEntropyMode]; } set { base[ConfigurationStrings.DefaultKeyEntropyMode] = value; } } [ConfigurationProperty(ConfigurationStrings.IssuedTokenRenewalThresholdPercentage, DefaultValue = SpnegoTokenProvider.defaultServiceTokenValidityThresholdPercentage)] [IntegerValidator(MinValue = 0, MaxValue = 100)] public int IssuedTokenRenewalThresholdPercentage { get { return (int)base[ConfigurationStrings.IssuedTokenRenewalThresholdPercentage]; } set { base[ConfigurationStrings.IssuedTokenRenewalThresholdPercentage] = value; } } public void Copy(IssuedTokenClientElement from) { if (this.IsReadOnly()) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ConfigurationErrorsException(SR.GetString(SR.ConfigReadOnly))); } if (null == from) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("from"); } this.DefaultKeyEntropyMode = from.DefaultKeyEntropyMode; this.CacheIssuedTokens = from.CacheIssuedTokens; this.MaxIssuedTokenCachingTime = from.MaxIssuedTokenCachingTime; this.IssuedTokenRenewalThresholdPercentage = from.IssuedTokenRenewalThresholdPercentage; #pragma warning suppress 56506 //[....]; from.ElementInformation.Properties[ConfigurationStrings.LocalIssuerIssuedTokenParameters] can never be null (underlying configuration system guarantees) if (PropertyValueOrigin.Default != from.ElementInformation.Properties[ConfigurationStrings.LocalIssuer].ValueOrigin) { this.LocalIssuer.Copy(from.LocalIssuer); } #pragma warning suppress 56506 //[....]; from.ElementInformation.Properties[ConfigurationStrings.LocalIssuerChannelBehaviors] can never be null (underlying configuration system guarantees) if (PropertyValueOrigin.Default != from.ElementInformation.Properties[ConfigurationStrings.LocalIssuerChannelBehaviors].ValueOrigin) { this.LocalIssuerChannelBehaviors = from.LocalIssuerChannelBehaviors; } #pragma warning suppress 56506 //[....]; from.ElementInformation.Properties[ConfigurationStrings.IssuerChannelBehaviors] can never be null (underlying configuration system guarantees) if (PropertyValueOrigin.Default != from.ElementInformation.Properties[ConfigurationStrings.IssuerChannelBehaviors].ValueOrigin) { foreach (IssuedTokenClientBehaviorsElement element in from.IssuerChannelBehaviors) { this.IssuerChannelBehaviors.Add(element); } } } internal void ApplyConfiguration(IssuedTokenClientCredential issuedToken) { if (issuedToken == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("issuedToken"); } issuedToken.CacheIssuedTokens = this.CacheIssuedTokens; issuedToken.DefaultKeyEntropyMode = this.DefaultKeyEntropyMode; issuedToken.MaxIssuedTokenCachingTime = this.MaxIssuedTokenCachingTime; issuedToken.IssuedTokenRenewalThresholdPercentage = this.IssuedTokenRenewalThresholdPercentage; if (PropertyValueOrigin.Default != this.ElementInformation.Properties[ConfigurationStrings.LocalIssuer].ValueOrigin) { this.LocalIssuer.Validate(); issuedToken.LocalIssuerAddress = ConfigLoader.LoadEndpointAddress(this.LocalIssuer); if (!string.IsNullOrEmpty(this.LocalIssuer.Binding)) { issuedToken.LocalIssuerBinding = ConfigLoader.LookupBinding(this.LocalIssuer.Binding, this.LocalIssuer.BindingConfiguration, this.EvaluationContext); } } if (!string.IsNullOrEmpty(this.LocalIssuerChannelBehaviors)) { ConfigLoader.LoadChannelBehaviors(this.LocalIssuerChannelBehaviors, this.EvaluationContext, issuedToken.LocalIssuerChannelBehaviors); } if (PropertyValueOrigin.Default != this.ElementInformation.Properties[ConfigurationStrings.IssuerChannelBehaviors].ValueOrigin) { foreach (IssuedTokenClientBehaviorsElement issuerBehaviorElement in this.IssuerChannelBehaviors) { if (!string.IsNullOrEmpty(issuerBehaviorElement.BehaviorConfiguration)) { KeyedByTypeCollectionissuerBehaviors = new KeyedByTypeCollection (); ConfigLoader.LoadChannelBehaviors(issuerBehaviorElement.BehaviorConfiguration, this.EvaluationContext, issuerBehaviors); issuedToken.IssuerChannelBehaviors.Add(new Uri(issuerBehaviorElement.IssuerAddress), issuerBehaviors); } } } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ShaderRenderModeValidation.cs
- ParallelTimeline.cs
- StringUtil.cs
- XmlSchemaSet.cs
- TextEffect.cs
- ValidatorCollection.cs
- ActivityDesigner.cs
- DataGridViewColumnStateChangedEventArgs.cs
- SimpleMailWebEventProvider.cs
- UnauthorizedWebPart.cs
- OleDbReferenceCollection.cs
- XamlStream.cs
- InputReportEventArgs.cs
- QueryPageSettingsEventArgs.cs
- LoginCancelEventArgs.cs
- COM2IDispatchConverter.cs
- DefaultTraceListener.cs
- AlgoModule.cs
- FieldNameLookup.cs
- DistinctQueryOperator.cs
- XmlSchemaProviderAttribute.cs
- HitTestResult.cs
- FolderBrowserDialogDesigner.cs
- EnumerableRowCollectionExtensions.cs
- SizeAnimationBase.cs
- DictionaryEntry.cs
- ConfigurationValue.cs
- InfocardExtendedInformationCollection.cs
- Convert.cs
- HyperLinkField.cs
- DBConnectionString.cs
- XmlCollation.cs
- DataMemberConverter.cs
- DayRenderEvent.cs
- RowUpdatedEventArgs.cs
- AutomationPeer.cs
- HtmlInputPassword.cs
- WaitForChangedResult.cs
- HttpListener.cs
- SortDescriptionCollection.cs
- PaintEvent.cs
- XappLauncher.cs
- ClientSettingsSection.cs
- PrintControllerWithStatusDialog.cs
- CompiledQueryCacheKey.cs
- NotCondition.cs
- MsmqIntegrationAppDomainProtocolHandler.cs
- SettingsContext.cs
- Vector3dCollection.cs
- ParagraphVisual.cs
- TextProperties.cs
- infer.cs
- WebPartConnectionsCancelVerb.cs
- ButtonBaseAutomationPeer.cs
- EntityContainerEmitter.cs
- PerformanceCounterCategory.cs
- HtmlInputText.cs
- SpellerHighlightLayer.cs
- CookieParameter.cs
- DataGridViewCellValueEventArgs.cs
- MatrixUtil.cs
- ObjectReferenceStack.cs
- GridSplitterAutomationPeer.cs
- TickBar.cs
- DataContractSet.cs
- ChangeTracker.cs
- EFTableProvider.cs
- DataObject.cs
- ViewPort3D.cs
- Int32.cs
- NameTable.cs
- SqlRowUpdatedEvent.cs
- shaper.cs
- DataRowComparer.cs
- XmlILOptimizerVisitor.cs
- TextStore.cs
- SessionStateItemCollection.cs
- KeyTime.cs
- HandlerWithFactory.cs
- TextDocumentView.cs
- COM2ComponentEditor.cs
- AutomationPropertyInfo.cs
- RegisteredDisposeScript.cs
- PrimaryKeyTypeConverter.cs
- DefaultTextStore.cs
- HtmlContainerControl.cs
- ConsumerConnectionPointCollection.cs
- EventDriven.cs
- StrokeSerializer.cs
- EditBehavior.cs
- HelpInfo.cs
- ErrorFormatterPage.cs
- BypassElementCollection.cs
- MissingSatelliteAssemblyException.cs
- AllMembershipCondition.cs
- DataColumnMappingCollection.cs
- DiscoveryDocumentLinksPattern.cs
- KnowledgeBase.cs
- TargetInvocationException.cs
- DragDrop.cs