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
- LinqDataSourceValidationException.cs
- WebMessageEncodingBindingElement.cs
- BufferModeSettings.cs
- TagMapInfo.cs
- MembershipUser.cs
- UserUseLicenseDictionaryLoader.cs
- DataGridRowEventArgs.cs
- LinqDataSourceDeleteEventArgs.cs
- ApplyImportsAction.cs
- ControlDesigner.cs
- DesignerSerializationManager.cs
- BitmapDownload.cs
- CurrencyManager.cs
- XPathParser.cs
- ClientBuildManagerCallback.cs
- SupportsEventValidationAttribute.cs
- MeshGeometry3D.cs
- XmlConvert.cs
- StructuredProperty.cs
- MenuBase.cs
- ResolveMatchesApril2005.cs
- ClockGroup.cs
- ErrorHandler.cs
- VisualTreeHelper.cs
- CopyCodeAction.cs
- MetafileHeaderWmf.cs
- FormViewCommandEventArgs.cs
- FilteredDataSetHelper.cs
- ToolboxItemFilterAttribute.cs
- UnsafeNativeMethods.cs
- ColumnWidthChangedEvent.cs
- WindowVisualStateTracker.cs
- SocketConnection.cs
- Tuple.cs
- Wizard.cs
- CodeAttributeDeclarationCollection.cs
- TraceFilter.cs
- ControlPropertyNameConverter.cs
- ParserOptions.cs
- SystemColorTracker.cs
- FrameworkTextComposition.cs
- cookie.cs
- SqlFacetAttribute.cs
- ExpressionReplacer.cs
- EntityDataSourceChangedEventArgs.cs
- PolicyLevel.cs
- IDQuery.cs
- ExpandoClass.cs
- XmlSchemaException.cs
- PersonalizableAttribute.cs
- SqlRemoveConstantOrderBy.cs
- Speller.cs
- DBAsyncResult.cs
- Attachment.cs
- ParsedAttributeCollection.cs
- TargetFrameworkUtil.cs
- IMembershipProvider.cs
- Matrix.cs
- UDPClient.cs
- HttpApplication.cs
- unsafeIndexingFilterStream.cs
- TextRangeEditLists.cs
- TableLayoutSettingsTypeConverter.cs
- XmlAnyAttributeAttribute.cs
- Util.cs
- PhysicalOps.cs
- OlePropertyStructs.cs
- UnsafeNativeMethodsTablet.cs
- ExpressionEditorAttribute.cs
- X509Certificate2Collection.cs
- LinkConverter.cs
- ADConnectionHelper.cs
- XXXInfos.cs
- WindowsSpinner.cs
- EdmProviderManifest.cs
- Attachment.cs
- SQLConvert.cs
- BitStream.cs
- MailWebEventProvider.cs
- XamlSerializer.cs
- ClientRoleProvider.cs
- updateconfighost.cs
- AQNBuilder.cs
- GridPattern.cs
- CodeGeneratorOptions.cs
- Deflater.cs
- XPathDocumentNavigator.cs
- RegexGroupCollection.cs
- Converter.cs
- IODescriptionAttribute.cs
- OleDbRowUpdatingEvent.cs
- InvokeGenerator.cs
- WCFServiceClientProxyGenerator.cs
- ClientRoleProvider.cs
- RemotingServices.cs
- Message.cs
- TrustLevel.cs
- BevelBitmapEffect.cs
- ExtractCollection.cs
- SqlDataSourceCommandParser.cs