Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / IdentityModel / System / IdentityModel / Tokens / EncryptedKeyIdentifierClause.cs / 1305376 / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- hresults.cs
- DrawingCollection.cs
- BitmapFrameEncode.cs
- DataGridRowDetailsEventArgs.cs
- RichTextBoxAutomationPeer.cs
- ElementNotAvailableException.cs
- EntityDataSourceUtil.cs
- JoinElimination.cs
- CredentialManagerDialog.cs
- HwndSourceKeyboardInputSite.cs
- CodeLabeledStatement.cs
- PeerTransportBindingElement.cs
- RuleRefElement.cs
- SQLMoney.cs
- FileCodeGroup.cs
- DataGridItem.cs
- TimeoutValidationAttribute.cs
- DataGrid.cs
- _ServiceNameStore.cs
- ResourceDescriptionAttribute.cs
- DelimitedListTraceListener.cs
- XmlImplementation.cs
- BezierSegment.cs
- Helper.cs
- CommandBinding.cs
- ObjectAnimationBase.cs
- BitmapFrameDecode.cs
- DataGridViewRowCancelEventArgs.cs
- TargetInvocationException.cs
- Normalization.cs
- SystemInformation.cs
- Shape.cs
- DataTableTypeConverter.cs
- ECDsaCng.cs
- HttpWebRequestElement.cs
- AnimationException.cs
- SqlCacheDependencySection.cs
- SystemException.cs
- CriticalFinalizerObject.cs
- DataPagerCommandEventArgs.cs
- DesignerRegionCollection.cs
- ExceptionValidationRule.cs
- SystemThemeKey.cs
- DbConnectionPoolOptions.cs
- LambdaCompiler.Lambda.cs
- RouteItem.cs
- PKCS1MaskGenerationMethod.cs
- Attribute.cs
- DbReferenceCollection.cs
- GradientBrush.cs
- OdbcConnectionPoolProviderInfo.cs
- InstanceLockTracking.cs
- WebPartMovingEventArgs.cs
- SafeFileMappingHandle.cs
- ButtonFieldBase.cs
- SharedStatics.cs
- SqlAliasesReferenced.cs
- IFlowDocumentViewer.cs
- ConfigXmlWhitespace.cs
- Rectangle.cs
- PreviewPrintController.cs
- SqlProvider.cs
- Tuple.cs
- WindowsGraphics2.cs
- JobInputBins.cs
- UniqueCodeIdentifierScope.cs
- PropertyBuilder.cs
- TextProperties.cs
- CrossSiteScriptingValidation.cs
- JsonStringDataContract.cs
- HierarchicalDataSourceConverter.cs
- ZipArchive.cs
- mediaclock.cs
- InputLanguageCollection.cs
- GlyphRun.cs
- ObjectDesignerDataSourceView.cs
- DataContractAttribute.cs
- DateTimeConverter.cs
- DataGridRow.cs
- HwndSubclass.cs
- XamlWriterExtensions.cs
- DrawListViewItemEventArgs.cs
- TypedColumnHandler.cs
- ALinqExpressionVisitor.cs
- ManagementPath.cs
- ApplicationTrust.cs
- SpeechRecognizer.cs
- TextTreeRootNode.cs
- OrderPreservingSpoolingTask.cs
- RegisterInfo.cs
- TextCompositionManager.cs
- AsyncCompletedEventArgs.cs
- WindowsFormsSynchronizationContext.cs
- DNS.cs
- WebPartChrome.cs
- DataViewManagerListItemTypeDescriptor.cs
- PrintingPermission.cs
- RecordConverter.cs
- ByeMessage11.cs
- MissingMethodException.cs