Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / Net / System / Net / IntranetCredentialPolicy.cs / 1 / IntranetCredentialPolicy.cs
namespace Microsoft.Win32 {
using System;
using System.Net;
using System.Globalization;
using System.IO;
using System.Security.Permissions;
using System.Security.Principal;
using System.ComponentModel;
using System.Text;
using System.Runtime.InteropServices;
// IID_IInternetSecurityManager = 79eac9ee-baf9-11ce-8c82-00aa004ba90b
// IID_IInternetZoneManager = 79eac9ef-baf9-11ce-8c82-00aa004ba90b
// CLSID_InternetSecurityManager= 7b8a2d94-0ac9-11d1-896c-00c04Fb6bfc4
// CLSID_InternetZoneManager = 7b8a2d95-0ac9-11d1-896c-00c04Fb6bfc4
[ComImport, ComVisible(false), Guid("7b8a2d94-0ac9-11d1-896c-00c04Fb6bfc4")]
internal class InternetSecurityManager {
}
[ComImport, ComVisible(false), Guid("79eac9ee-baf9-11ce-8c82-00aa004ba90b"), System.Runtime.InteropServices.InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
internal interface IInternetSecurityManager {
unsafe void SetSecuritySite( void *pSite);
unsafe void GetSecuritySite( /* [out] */ void **ppSite);
[System.Security.SuppressUnmanagedCodeSecurity]
void MapUrlToZone(
[In, MarshalAs(UnmanagedType.BStr)]
string pwszUrl,
[Out] out int pdwZone,
[In] int dwFlags);
unsafe void GetSecurityId( /* [in] */ string pwszUrl,
/* [size_is][out] */ byte *pbSecurityId,
/* [out][in] */ int *pcbSecurityId,
/* [in] */ int dwReserved);
unsafe void ProcessUrlAction(
/* [in] */ string pwszUrl,
/* [in] */ int dwAction,
/* [size_is][out] */ byte *pPolicy,
/* [in] */ int cbPolicy,
/* [in] */ byte *pContext,
/* [in] */ int cbContext,
/* [in] */ int dwFlags,
/* [in] */ int dwReserved);
unsafe void QueryCustomPolicy(
/* [in] */ string pwszUrl,
/* [in] */ /*REFGUID*/ void *guidKey,
/* [size_is][size_is][out] */ byte **ppPolicy,
/* [out] */ int *pcbPolicy,
/* [in] */ byte *pContext,
/* [in] */ int cbContext,
/* [in] */ int dwReserved);
unsafe void SetZoneMapping( /* [in] */ int dwZone, /* [in] */ string lpszPattern, /* [in] */ int dwFlags);
unsafe void GetZoneMappings( /* [in] */ int dwZone, /* [out] */ /*IEnumString*/ void **ppenumString, /* [in] */ int dwFlags);
}
public class IntranetZoneCredentialPolicy: ICredentialPolicy
{
private const int URLZONE_INTRANET = 1;
IInternetSecurityManager _ManagerRef;
public IntranetZoneCredentialPolicy()
{
ExceptionHelper.ControlPolicyPermission.Demand();
_ManagerRef = (IInternetSecurityManager)new InternetSecurityManager();
}
//
// Make an interop call into UriMon
// authModule and credential parameters are not considered
//
public virtual bool ShouldSendCredential(Uri challengeUri, WebRequest request, NetworkCredential credential, IAuthenticationModule authModule)
{
int pdwZone;
_ManagerRef.MapUrlToZone(challengeUri.AbsoluteUri, out pdwZone, 0);
return pdwZone == URLZONE_INTRANET;
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
namespace Microsoft.Win32 {
using System;
using System.Net;
using System.Globalization;
using System.IO;
using System.Security.Permissions;
using System.Security.Principal;
using System.ComponentModel;
using System.Text;
using System.Runtime.InteropServices;
// IID_IInternetSecurityManager = 79eac9ee-baf9-11ce-8c82-00aa004ba90b
// IID_IInternetZoneManager = 79eac9ef-baf9-11ce-8c82-00aa004ba90b
// CLSID_InternetSecurityManager= 7b8a2d94-0ac9-11d1-896c-00c04Fb6bfc4
// CLSID_InternetZoneManager = 7b8a2d95-0ac9-11d1-896c-00c04Fb6bfc4
[ComImport, ComVisible(false), Guid("7b8a2d94-0ac9-11d1-896c-00c04Fb6bfc4")]
internal class InternetSecurityManager {
}
[ComImport, ComVisible(false), Guid("79eac9ee-baf9-11ce-8c82-00aa004ba90b"), System.Runtime.InteropServices.InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
internal interface IInternetSecurityManager {
unsafe void SetSecuritySite( void *pSite);
unsafe void GetSecuritySite( /* [out] */ void **ppSite);
[System.Security.SuppressUnmanagedCodeSecurity]
void MapUrlToZone(
[In, MarshalAs(UnmanagedType.BStr)]
string pwszUrl,
[Out] out int pdwZone,
[In] int dwFlags);
unsafe void GetSecurityId( /* [in] */ string pwszUrl,
/* [size_is][out] */ byte *pbSecurityId,
/* [out][in] */ int *pcbSecurityId,
/* [in] */ int dwReserved);
unsafe void ProcessUrlAction(
/* [in] */ string pwszUrl,
/* [in] */ int dwAction,
/* [size_is][out] */ byte *pPolicy,
/* [in] */ int cbPolicy,
/* [in] */ byte *pContext,
/* [in] */ int cbContext,
/* [in] */ int dwFlags,
/* [in] */ int dwReserved);
unsafe void QueryCustomPolicy(
/* [in] */ string pwszUrl,
/* [in] */ /*REFGUID*/ void *guidKey,
/* [size_is][size_is][out] */ byte **ppPolicy,
/* [out] */ int *pcbPolicy,
/* [in] */ byte *pContext,
/* [in] */ int cbContext,
/* [in] */ int dwReserved);
unsafe void SetZoneMapping( /* [in] */ int dwZone, /* [in] */ string lpszPattern, /* [in] */ int dwFlags);
unsafe void GetZoneMappings( /* [in] */ int dwZone, /* [out] */ /*IEnumString*/ void **ppenumString, /* [in] */ int dwFlags);
}
public class IntranetZoneCredentialPolicy: ICredentialPolicy
{
private const int URLZONE_INTRANET = 1;
IInternetSecurityManager _ManagerRef;
public IntranetZoneCredentialPolicy()
{
ExceptionHelper.ControlPolicyPermission.Demand();
_ManagerRef = (IInternetSecurityManager)new InternetSecurityManager();
}
//
// Make an interop call into UriMon
// authModule and credential parameters are not considered
//
public virtual bool ShouldSendCredential(Uri challengeUri, WebRequest request, NetworkCredential credential, IAuthenticationModule authModule)
{
int pdwZone;
_ManagerRef.MapUrlToZone(challengeUri.AbsoluteUri, out pdwZone, 0);
return pdwZone == URLZONE_INTRANET;
}
}
}
// 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
- SqlRewriteScalarSubqueries.cs
- PermissionAttributes.cs
- ImageButton.cs
- FormView.cs
- InertiaRotationBehavior.cs
- WebPartAddingEventArgs.cs
- TextEditorCopyPaste.cs
- XmlSchemaSimpleType.cs
- FileDocument.cs
- DefaultHttpHandler.cs
- TdsParserStateObject.cs
- PriorityBinding.cs
- SessionSwitchEventArgs.cs
- PolicyStatement.cs
- HttpProfileGroupBase.cs
- MinimizableAttributeTypeConverter.cs
- Parser.cs
- HWStack.cs
- Set.cs
- DataGridViewComboBoxColumn.cs
- SharedConnectionInfo.cs
- BezierSegment.cs
- ElapsedEventArgs.cs
- RSAPKCS1SignatureFormatter.cs
- GridErrorDlg.cs
- Timeline.cs
- AdornedElementPlaceholder.cs
- XmlUtf8RawTextWriter.cs
- ContainerSelectorGlyph.cs
- FontResourceCache.cs
- LinqDataSourceDeleteEventArgs.cs
- GeneralTransform3DGroup.cs
- RefType.cs
- ExpressionVisitor.cs
- VectorAnimationUsingKeyFrames.cs
- KeyGestureConverter.cs
- BaseCollection.cs
- TrustLevel.cs
- RuntimeConfigurationRecord.cs
- TemplatePartAttribute.cs
- SynchronizedChannelCollection.cs
- ActivityDesignerLayoutSerializers.cs
- PolygonHotSpot.cs
- WebBrowser.cs
- HttpConfigurationSystem.cs
- LoadItemsEventArgs.cs
- JulianCalendar.cs
- FieldNameLookup.cs
- XmlStreamStore.cs
- SingleAnimationBase.cs
- BindingExpression.cs
- SqlFileStream.cs
- mansign.cs
- SynchronousSendBindingElement.cs
- DateTimeFormatInfoScanner.cs
- Item.cs
- ExtendedProperty.cs
- HelpInfo.cs
- MexNamedPipeBindingCollectionElement.cs
- parserscommon.cs
- ExeContext.cs
- CompoundFileReference.cs
- HttpListener.cs
- Compiler.cs
- ClientSession.cs
- LinkConverter.cs
- RelatedEnd.cs
- XmlCodeExporter.cs
- PrtCap_Base.cs
- PhysicalOps.cs
- VBIdentifierName.cs
- ExeConfigurationFileMap.cs
- GridItemProviderWrapper.cs
- HtmlShimManager.cs
- InputBinder.cs
- StrokeCollectionDefaultValueFactory.cs
- Point4DConverter.cs
- SessionParameter.cs
- Logging.cs
- RandomNumberGenerator.cs
- DataControlFieldTypeEditor.cs
- MobilePage.cs
- RtType.cs
- SBCSCodePageEncoding.cs
- DataObjectEventArgs.cs
- AppDomainManager.cs
- EntityDataSourceEntitySetNameItem.cs
- MetadataArtifactLoaderCompositeResource.cs
- RightsManagementManager.cs
- ToolStripPanelRow.cs
- QueryPageSettingsEventArgs.cs
- InputScope.cs
- DataGridTextBoxColumn.cs
- OdbcConnectionPoolProviderInfo.cs
- tooltip.cs
- JournalEntryListConverter.cs
- AdRotator.cs
- HttpCachePolicyWrapper.cs
- ErrorLog.cs
- SuppressMergeCheckAttribute.cs