Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / IdentityModel / System / IdentityModel / Tokens / EncryptedKeyIdentifierClause.cs / 1 / EncryptedKeyIdentifierClause.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.IdentityModel.Tokens { using System.Globalization; sealed public class EncryptedKeyIdentifierClause : BinaryKeyIdentifierClause { readonly string carriedKeyName; readonly string encryptionMethod; readonly SecurityKeyIdentifier encryptingKeyIdentifier; public EncryptedKeyIdentifierClause(byte[] encryptedKey, string encryptionMethod) : this(encryptedKey, encryptionMethod, null) { } public EncryptedKeyIdentifierClause(byte[] encryptedKey, string encryptionMethod, SecurityKeyIdentifier encryptingKeyIdentifier) : this(encryptedKey, encryptionMethod, encryptingKeyIdentifier, null) { } public EncryptedKeyIdentifierClause(byte[] encryptedKey, string encryptionMethod, SecurityKeyIdentifier encryptingKeyIdentifier, string carriedKeyName) : this(encryptedKey, encryptionMethod, encryptingKeyIdentifier, carriedKeyName, true, null, 0) { } public EncryptedKeyIdentifierClause(byte[] encryptedKey, string encryptionMethod, SecurityKeyIdentifier encryptingKeyIdentifier, string carriedKeyName, byte[] derivationNonce, int derivationLength) : this(encryptedKey, encryptionMethod, encryptingKeyIdentifier, carriedKeyName, true, derivationNonce, derivationLength) { } internal EncryptedKeyIdentifierClause(byte[] encryptedKey, string encryptionMethod, SecurityKeyIdentifier encryptingKeyIdentifier, string carriedKeyName, bool cloneBuffer, byte[] derivationNonce, int derivationLength) : base("http://www.w3.org/2001/04/xmlenc#EncryptedKey", encryptedKey, cloneBuffer, derivationNonce, derivationLength) { if (encryptionMethod == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("encryptionMethod"); } this.carriedKeyName = carriedKeyName; this.encryptionMethod = encryptionMethod; this.encryptingKeyIdentifier = encryptingKeyIdentifier; } public string CarriedKeyName { get { return this.carriedKeyName; } } public SecurityKeyIdentifier EncryptingKeyIdentifier { get { return this.encryptingKeyIdentifier; } } public string EncryptionMethod { get { return this.encryptionMethod; } } public override bool Matches(SecurityKeyIdentifierClause keyIdentifierClause) { EncryptedKeyIdentifierClause that = keyIdentifierClause as EncryptedKeyIdentifierClause; // PreSharp Bug: Parameter 'that' to this public method must be validated: A null-dereference can occur here. #pragma warning suppress 56506 return ReferenceEquals(this, that) || (that != null && that.Matches(this.GetRawBuffer(), this.encryptionMethod, this.carriedKeyName)); } public bool Matches(byte[] encryptedKey, string encryptionMethod, string carriedKeyName) { return Matches(encryptedKey) && this.encryptionMethod == encryptionMethod && this.carriedKeyName == carriedKeyName; } public byte[] GetEncryptedKey() { return GetBuffer(); } public override string ToString() { return string.Format(CultureInfo.InvariantCulture, "EncryptedKeyIdentifierClause(EncryptedKey = {0}, Method '{1}')", Convert.ToBase64String(GetRawBuffer()), this.EncryptionMethod); } } } // 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
- LoginUtil.cs
- DocumentScope.cs
- XMLDiffLoader.cs
- OutputCacheProfileCollection.cs
- EncodingNLS.cs
- PathFigureCollection.cs
- SelectionRange.cs
- ViewService.cs
- ListViewGroupItemCollection.cs
- IListConverters.cs
- RoutedEventValueSerializer.cs
- BaseDataListActionList.cs
- ResourceReferenceExpressionConverter.cs
- NotImplementedException.cs
- X509Chain.cs
- ContentElementAutomationPeer.cs
- BindValidationContext.cs
- FrameworkContextData.cs
- odbcmetadatacolumnnames.cs
- LinkAreaEditor.cs
- ProxyWebPartConnectionCollection.cs
- FixedLineResult.cs
- compensatingcollection.cs
- ResetableIterator.cs
- WebPartHelpVerb.cs
- Line.cs
- Errors.cs
- FixedNode.cs
- Transform3D.cs
- DbProviderFactories.cs
- CellPartitioner.cs
- Simplifier.cs
- WorkflowTransactionService.cs
- EventLogLink.cs
- XmlComment.cs
- HotSpotCollection.cs
- PingOptions.cs
- RNGCryptoServiceProvider.cs
- TimeoutStream.cs
- x509utils.cs
- DesignTimeTemplateParser.cs
- SelectionHighlightInfo.cs
- MessageBox.cs
- SqlDataReaderSmi.cs
- OdbcReferenceCollection.cs
- MouseButtonEventArgs.cs
- COM2IDispatchConverter.cs
- CodeDelegateCreateExpression.cs
- TrackingMemoryStream.cs
- IndexedGlyphRun.cs
- FormViewUpdateEventArgs.cs
- ProviderConnectionPoint.cs
- CorrelationManager.cs
- PtsHelper.cs
- CollectionTypeElement.cs
- SpellerHighlightLayer.cs
- AttachmentService.cs
- Int64Converter.cs
- TreeView.cs
- CodeCommentStatement.cs
- MimeTypePropertyAttribute.cs
- odbcmetadatafactory.cs
- PropertyChange.cs
- SearchForVirtualItemEventArgs.cs
- CompilerGlobalScopeAttribute.cs
- ReadOnlyDictionary.cs
- JournalNavigationScope.cs
- NetworkInformationException.cs
- XMLDiffLoader.cs
- ParserContext.cs
- PermissionSetEnumerator.cs
- SizeLimitedCache.cs
- Point3DCollectionValueSerializer.cs
- WindowsGraphics2.cs
- ButtonPopupAdapter.cs
- QilTargetType.cs
- CodeObject.cs
- Shape.cs
- _TimerThread.cs
- AlignmentYValidation.cs
- WebBrowserProgressChangedEventHandler.cs
- SafeFileMapViewHandle.cs
- dsa.cs
- RestHandler.cs
- SqlDataSourceStatusEventArgs.cs
- KeyValuePairs.cs
- TableProvider.cs
- SqlDataSourceCommandEventArgs.cs
- QueryCursorEventArgs.cs
- Color.cs
- XmlWellformedWriter.cs
- InternalDuplexChannelListener.cs
- XmlSchemaSet.cs
- _LocalDataStoreMgr.cs
- ResourcePropertyMemberCodeDomSerializer.cs
- OdbcConnectionStringbuilder.cs
- EntityDataSourceWrapper.cs
- DescendentsWalker.cs
- TextOnlyOutput.cs
- SocketCache.cs