Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Security / SspiNegotiationTokenAuthenticatorState.cs / 1 / SspiNegotiationTokenAuthenticatorState.cs
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
namespace System.ServiceModel.Security
{
using System.IdentityModel.Claims;
using System.ServiceModel;
using System.IdentityModel.Policy;
using System.Security.Principal;
using System.Security.Cryptography;
using System.Security.Cryptography.X509Certificates;
using System.Collections.Generic;
using System.ServiceModel.Channels;
using System.Runtime.Serialization;
using System.Net;
using System.Diagnostics;
class SspiNegotiationTokenAuthenticatorState : NegotiationTokenAuthenticatorState
{
ISspiNegotiation sspiNegotiation;
HashAlgorithm negotiationDigest;
string context;
int requestedKeySize;
EndpointAddress appliesTo;
DataContractSerializer appliesToSerializer;
public SspiNegotiationTokenAuthenticatorState(ISspiNegotiation sspiNegotiation)
: base()
{
if (sspiNegotiation == null)
{
throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("sspiNegotiation");
}
this.sspiNegotiation = sspiNegotiation;
this.negotiationDigest = CryptoHelper.NewSha1HashAlgorithm();
}
public ISspiNegotiation SspiNegotiation
{
get
{
return this.sspiNegotiation;
}
}
internal int RequestedKeySize
{
get
{
return this.requestedKeySize;
}
set
{
this.requestedKeySize = value;
}
}
internal HashAlgorithm NegotiationDigest
{
get
{
return this.negotiationDigest;
}
}
internal string Context
{
get
{
return this.context;
}
set
{
this.context = value;
}
}
internal EndpointAddress AppliesTo
{
get
{
return this.appliesTo;
}
set
{
this.appliesTo = value;
}
}
internal DataContractSerializer AppliesToSerializer
{
get
{
return this.appliesToSerializer;
}
set
{
this.appliesToSerializer = value;
}
}
public override string GetRemoteIdentityName()
{
if (this.sspiNegotiation != null && !this.IsNegotiationCompleted)
{
return this.sspiNegotiation.GetRemoteIdentityName();
}
return base.GetRemoteIdentityName();
}
public override void Dispose()
{
try
{
lock (ThisLock)
{
if (this.sspiNegotiation != null)
{
this.sspiNegotiation.Dispose();
}
if (this.negotiationDigest != null)
{
((IDisposable)this.negotiationDigest).Dispose();
}
}
}
finally
{
base.Dispose();
}
}
}
}
// 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
- NGCSerializerAsync.cs
- ObjectSecurity.cs
- PrincipalPermission.cs
- XmlNodeChangedEventArgs.cs
- HelpInfo.cs
- ExpandSegmentCollection.cs
- Typography.cs
- OrderPreservingPipeliningSpoolingTask.cs
- XPathMultyIterator.cs
- RelOps.cs
- CopyOfAction.cs
- CodeDirectionExpression.cs
- CompositeFontFamily.cs
- ComponentCommands.cs
- FilterQuery.cs
- EffectiveValueEntry.cs
- HttpConfigurationSystem.cs
- SmtpSection.cs
- listitem.cs
- HostedHttpContext.cs
- UnsafeNativeMethods.cs
- MouseEventArgs.cs
- TextStore.cs
- BamlBinaryWriter.cs
- FlowDocument.cs
- XPathItem.cs
- ListViewGroup.cs
- EventSourceCreationData.cs
- CultureTable.cs
- ToolStripTemplateNode.cs
- InvalidProgramException.cs
- PeerObject.cs
- XmlUtilWriter.cs
- XmlILModule.cs
- PhysicalAddress.cs
- AnnotationResourceCollection.cs
- TimerEventSubscription.cs
- BCLDebug.cs
- Repeater.cs
- PrimitiveCodeDomSerializer.cs
- PointValueSerializer.cs
- DesignTimeTemplateParser.cs
- XmlSchemaType.cs
- ScaleTransform.cs
- BlurBitmapEffect.cs
- Emitter.cs
- ChtmlImageAdapter.cs
- ChineseLunisolarCalendar.cs
- HtmlShimManager.cs
- SelectedDatesCollection.cs
- ImageField.cs
- DragEventArgs.cs
- ExceptionCollection.cs
- PageParser.cs
- login.cs
- COM2AboutBoxPropertyDescriptor.cs
- AssemblyAttributesGoHere.cs
- WsdlInspector.cs
- TypeSystemProvider.cs
- PropertyEmitterBase.cs
- CqlParserHelpers.cs
- SqlDataReader.cs
- serverconfig.cs
- XmlAutoDetectWriter.cs
- MemberPath.cs
- HttpHeaderCollection.cs
- ShaderEffect.cs
- OleAutBinder.cs
- ListControlBoundActionList.cs
- CodeCatchClause.cs
- StylusButtonCollection.cs
- MobileDeviceCapabilitiesSectionHandler.cs
- TickBar.cs
- ProxyManager.cs
- complextypematerializer.cs
- NumericPagerField.cs
- ControlPaint.cs
- MessageSecurityOverHttpElement.cs
- ServiceEndpointElementCollection.cs
- XPathSelfQuery.cs
- ThreadTrace.cs
- WaitingCursor.cs
- FontInfo.cs
- WriteStateInfoBase.cs
- ColumnWidthChangedEvent.cs
- ExceptionHandlers.cs
- WebPartConnectionsCloseVerb.cs
- ChannelSettingsElement.cs
- DataGridViewDataConnection.cs
- HeaderElement.cs
- CalculatedColumn.cs
- SqlBulkCopyColumnMappingCollection.cs
- UriScheme.cs
- Wildcard.cs
- BitmapMetadataBlob.cs
- SortKey.cs
- StreamGeometryContext.cs
- AuthenticationException.cs
- Visual.cs
- ParameterElement.cs