Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / IdentityModel / System / IdentityModel / Selectors / X509SecurityTokenProvider.cs / 1 / X509SecurityTokenProvider.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.IdentityModel.Selectors { using System.IdentityModel.Tokens; using System.Security.Cryptography.X509Certificates; public class X509SecurityTokenProvider : SecurityTokenProvider, IDisposable { X509Certificate2 certificate; public X509SecurityTokenProvider(X509Certificate2 certificate) { if (certificate == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("certificate"); } this.certificate = new X509Certificate2(certificate); } public X509SecurityTokenProvider(StoreLocation storeLocation, StoreName storeName, X509FindType findType, object findValue) { if (findValue == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("findValue"); } X509CertificateStore store = new X509CertificateStore(storeName, storeLocation); X509Certificate2Collection certificates = null; try { store.Open(OpenFlags.ReadOnly); certificates = store.Find(findType, findValue, false); if (certificates.Count < 1) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new SecurityTokenException(SR.GetString(SR.CannotFindCert, storeName, storeLocation, findType, findValue))); } if (certificates.Count > 1) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new SecurityTokenException(SR.GetString(SR.FoundMultipleCerts, storeName, storeLocation, findType, findValue))); } this.certificate = new X509Certificate2(certificates[0]); } finally { SecurityUtils.ResetAllCertificates(certificates); store.Close(); } } public X509Certificate2 Certificate { get { return this.certificate; } } protected override SecurityToken GetTokenCore(TimeSpan timeout) { return new X509SecurityToken(this.certificate); } public void Dispose() { this.certificate.Reset(); } } } // 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
- PaintValueEventArgs.cs
- EventInfo.cs
- SchemaTableColumn.cs
- StylusPointPropertyInfo.cs
- DateTimeConstantAttribute.cs
- DesigntimeLicenseContextSerializer.cs
- XmlSchemaObject.cs
- ObjectQuery_EntitySqlExtensions.cs
- FontUnitConverter.cs
- CallSiteHelpers.cs
- AuthorizationPolicyTypeElement.cs
- EntityReference.cs
- Trustee.cs
- WebPartDescriptionCollection.cs
- NameService.cs
- ObservableDictionary.cs
- ImageIndexConverter.cs
- X509SecurityTokenAuthenticator.cs
- TextCompositionManager.cs
- HtmlDocument.cs
- DelegateInArgument.cs
- RefreshPropertiesAttribute.cs
- RecognitionEventArgs.cs
- HotSpotCollection.cs
- StrongBox.cs
- ClickablePoint.cs
- DataServiceRequestArgs.cs
- NativeBuffer.cs
- ExpressionEditorAttribute.cs
- COM2ExtendedUITypeEditor.cs
- SchemaImporterExtensionElementCollection.cs
- WebScriptServiceHost.cs
- ThreadAttributes.cs
- DesignerOptions.cs
- SplitContainer.cs
- PlatformCulture.cs
- WebRequestModuleElementCollection.cs
- WebPartVerb.cs
- XmlQueryType.cs
- SchemaNotation.cs
- MatrixAnimationUsingKeyFrames.cs
- XmlValidatingReaderImpl.cs
- TemplatePagerField.cs
- PagesChangedEventArgs.cs
- cookieexception.cs
- TextWriter.cs
- GraphicsPath.cs
- StoreItemCollection.cs
- HttpModule.cs
- _ConnectionGroup.cs
- InvokeProviderWrapper.cs
- TraceSwitch.cs
- SamlSecurityToken.cs
- EntityProviderFactory.cs
- CLRBindingWorker.cs
- RadioButtonList.cs
- XmlCharCheckingWriter.cs
- FormsAuthenticationUser.cs
- ActivityWithResultConverter.cs
- KeyedCollection.cs
- DiagnosticTrace.cs
- QuadraticEase.cs
- CorrelationManager.cs
- HttpServerVarsCollection.cs
- HtmlToClrEventProxy.cs
- StandardBindingImporter.cs
- CodeBinaryOperatorExpression.cs
- ThreadStaticAttribute.cs
- XmlReflectionMember.cs
- DecoderBestFitFallback.cs
- DecoratedNameAttribute.cs
- WindowsTreeView.cs
- RC2.cs
- MimeReflector.cs
- FrameworkReadOnlyPropertyMetadata.cs
- CodeDirectiveCollection.cs
- HttpCacheParams.cs
- RulePatternOps.cs
- Membership.cs
- RequestedSignatureDialog.cs
- NavigationPropertyEmitter.cs
- TransformCryptoHandle.cs
- InheritedPropertyChangedEventArgs.cs
- PropertyGridEditorPart.cs
- CodeTypeMemberCollection.cs
- SchemaElement.cs
- Ipv6Element.cs
- SmtpClient.cs
- AssociationSetMetadata.cs
- XmlSignificantWhitespace.cs
- EventMappingSettings.cs
- XmlSchemaParticle.cs
- Transform.cs
- FixedLineResult.cs
- PeerContact.cs
- WebPartUserCapability.cs
- MatrixCamera.cs
- DBBindings.cs
- TailPinnedEventArgs.cs
- NativeMethods.cs