Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Description / ServiceCredentials.cs / 1 / ServiceCredentials.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Description { using System.Collections.Generic; using System.Collections.ObjectModel; using System.ServiceModel.Channels; using System.ServiceModel.Dispatcher; using System.IdentityModel.Selectors; using System.Runtime.Serialization; using System.ServiceModel.Security; using System.Net; using System.Security.Principal; using System.ServiceModel.Security.Tokens; using System.Security.Cryptography.X509Certificates; using System.Web.Security; public class ServiceCredentials : SecurityCredentialsManager, IServiceBehavior { UserNamePasswordServiceCredential userName; X509CertificateInitiatorServiceCredential clientCertificate; X509CertificateRecipientServiceCredential serviceCertificate; WindowsServiceCredential windows; IssuedTokenServiceCredential issuedToken; PeerCredential peer; SecureConversationServiceCredential secureConversation; public ServiceCredentials() { this.userName = new UserNamePasswordServiceCredential(); this.clientCertificate = new X509CertificateInitiatorServiceCredential(); this.serviceCertificate = new X509CertificateRecipientServiceCredential(); this.windows = new WindowsServiceCredential(); this.issuedToken = new IssuedTokenServiceCredential(); this.peer = new PeerCredential(); this.secureConversation = new SecureConversationServiceCredential(); } protected ServiceCredentials(ServiceCredentials other) { if (other == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("other"); } this.userName = new UserNamePasswordServiceCredential(other.userName); this.clientCertificate = new X509CertificateInitiatorServiceCredential(other.clientCertificate); this.serviceCertificate = new X509CertificateRecipientServiceCredential(other.serviceCertificate); this.windows = new WindowsServiceCredential(other.windows); this.issuedToken = new IssuedTokenServiceCredential(other.issuedToken); this.peer = new PeerCredential(other.peer); this.secureConversation = new SecureConversationServiceCredential(other.secureConversation); } public UserNamePasswordServiceCredential UserNameAuthentication { get { return this.userName; } } public X509CertificateInitiatorServiceCredential ClientCertificate { get { return this.clientCertificate; } } public X509CertificateRecipientServiceCredential ServiceCertificate { get { return this.serviceCertificate; } } public WindowsServiceCredential WindowsAuthentication { get { return this.windows; } } public IssuedTokenServiceCredential IssuedTokenAuthentication { get { return this.issuedToken; } } public PeerCredential Peer { get { return this.peer; } } public SecureConversationServiceCredential SecureConversationAuthentication { get { return this.secureConversation; } } internal static ServiceCredentials CreateDefaultCredentials() { return new ServiceCredentials(); } public override SecurityTokenManager CreateSecurityTokenManager() { return new ServiceCredentialsSecurityTokenManager(this.Clone()); } protected virtual ServiceCredentials CloneCore() { return new ServiceCredentials(this); } public ServiceCredentials Clone() { ServiceCredentials result = CloneCore(); if (result == null || result.GetType() != this.GetType()) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotImplementedException(SR.GetString(SR.CloneNotImplementedCorrectly, this.GetType(), (result != null)? result.ToString() : "null"))); } return result; } void IServiceBehavior.Validate(ServiceDescription description, ServiceHostBase serviceHostBase) { } void IServiceBehavior.AddBindingParameters(ServiceDescription description, ServiceHostBase serviceHostBase, Collectionendpoints, BindingParameterCollection parameters) { if (parameters == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("parameters"); } // throw if bindingParameters already has a SecurityCredentialsManager SecurityCredentialsManager otherCredentialsManager = parameters.Find (); if (otherCredentialsManager != null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.MultipleSecurityCredentialsManagersInServiceBindingParameters, otherCredentialsManager))); } parameters.Add(this); } void IServiceBehavior.ApplyDispatchBehavior(ServiceDescription description, ServiceHostBase serviceHostBase) { } internal void MakeReadOnly() { this.ClientCertificate.MakeReadOnly(); this.IssuedTokenAuthentication.MakeReadOnly(); this.Peer.MakeReadOnly(); this.SecureConversationAuthentication.MakeReadOnly(); this.ServiceCertificate.MakeReadOnly(); this.UserNameAuthentication.MakeReadOnly(); this.WindowsAuthentication.MakeReadOnly(); } } } // 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
- ConfigurationLocation.cs
- TypeConverterAttribute.cs
- EncodingInfo.cs
- DoubleAnimationUsingKeyFrames.cs
- SortFieldComparer.cs
- UnsafeNativeMethodsCLR.cs
- UnsafeNetInfoNativeMethods.cs
- Context.cs
- PaperSize.cs
- XmlSchemaElement.cs
- EntityProviderFactory.cs
- BitmapEffectDrawingContextState.cs
- WorkflowServiceAttributes.cs
- Int32EqualityComparer.cs
- XmlEncoding.cs
- ListViewGroupCollectionEditor.cs
- SafeBitVector32.cs
- Image.cs
- Calendar.cs
- GPRECTF.cs
- SecureConversationServiceCredential.cs
- ConvertBinder.cs
- dbdatarecord.cs
- CreateRefExpr.cs
- DeploymentSection.cs
- GZipStream.cs
- Stacktrace.cs
- CommandHelpers.cs
- FirstMatchCodeGroup.cs
- Hash.cs
- RoleService.cs
- Rect3DConverter.cs
- keycontainerpermission.cs
- ResourceReferenceKeyNotFoundException.cs
- KeyEvent.cs
- ThemeDirectoryCompiler.cs
- CodeVariableReferenceExpression.cs
- DataKey.cs
- HMACSHA1.cs
- DragEventArgs.cs
- RegionIterator.cs
- SQLGuidStorage.cs
- Splitter.cs
- XmlLoader.cs
- ValidatorCollection.cs
- XmlDataCollection.cs
- ProfileBuildProvider.cs
- ContentHostHelper.cs
- EntityType.cs
- NativeMethods.cs
- CollectionConverter.cs
- BuildResult.cs
- HandoffBehavior.cs
- SByteStorage.cs
- RegexInterpreter.cs
- ApplicationFileParser.cs
- RSAPKCS1SignatureFormatter.cs
- DBCommandBuilder.cs
- HttpHandlerActionCollection.cs
- SpeakProgressEventArgs.cs
- CreateUserWizardStep.cs
- TextWriterEngine.cs
- SafeNativeMethods.cs
- ConfigurationLocationCollection.cs
- AnnouncementInnerClient11.cs
- WebPartDescription.cs
- NavigateUrlConverter.cs
- NullEntityWrapper.cs
- StickyNoteAnnotations.cs
- CommandManager.cs
- NonSerializedAttribute.cs
- VolatileEnlistmentState.cs
- HandleTable.cs
- WmlPageAdapter.cs
- HuffModule.cs
- HotSpotCollection.cs
- RowToFieldTransformer.cs
- Section.cs
- EntityWrapper.cs
- DispatcherExceptionFilterEventArgs.cs
- DataBinding.cs
- SkipStoryboardToFill.cs
- Completion.cs
- Certificate.cs
- XmlDownloadManager.cs
- ProtectedConfigurationSection.cs
- XmlSchemaCollection.cs
- MediaContextNotificationWindow.cs
- TerminateWorkflow.cs
- GridViewCommandEventArgs.cs
- BitmapInitialize.cs
- CompositeControl.cs
- PropertyManager.cs
- CrossContextChannel.cs
- MemoryMappedViewAccessor.cs
- HtmlInputButton.cs
- ScriptIgnoreAttribute.cs
- OptionalColumn.cs
- SqlExpressionNullability.cs
- ParsedAttributeCollection.cs