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
- SignatureGenerator.cs
- CompositeControlDesigner.cs
- EnumConverter.cs
- StatusStrip.cs
- CmsInterop.cs
- IProvider.cs
- DataGridViewToolTip.cs
- SecurityKeyUsage.cs
- IfAction.cs
- iisPickupDirectory.cs
- HelpEvent.cs
- HttpRequestCacheValidator.cs
- DataSourceControlBuilder.cs
- SchemaImporterExtensionElementCollection.cs
- CodeMemberProperty.cs
- DataGridTextBox.cs
- NotFiniteNumberException.cs
- FileLoadException.cs
- MarkupObject.cs
- MulticastDelegate.cs
- _StreamFramer.cs
- OdbcEnvironment.cs
- CompositeActivityTypeDescriptorProvider.cs
- Manipulation.cs
- AdapterUtil.cs
- AssemblyUtil.cs
- CacheForPrimitiveTypes.cs
- ProfileSettings.cs
- TreePrinter.cs
- Constraint.cs
- UIElementCollection.cs
- MemberDescriptor.cs
- WebBrowserBase.cs
- TreeViewImageKeyConverter.cs
- ContextConfiguration.cs
- CoreSwitches.cs
- altserialization.cs
- ViewStateModeByIdAttribute.cs
- MetaForeignKeyColumn.cs
- SerializationAttributes.cs
- RankException.cs
- ToolboxComponentsCreatedEventArgs.cs
- _LocalDataStoreMgr.cs
- RtfFormatStack.cs
- XmlWrappingReader.cs
- PropertyGeneratedEventArgs.cs
- AndMessageFilterTable.cs
- ContainerUIElement3D.cs
- Thickness.cs
- SimpleFileLog.cs
- DependencyPropertyDescriptor.cs
- DemultiplexingDispatchMessageFormatter.cs
- CompilationAssemblyInstallComponent.cs
- SingleObjectCollection.cs
- Task.cs
- FlowNode.cs
- TableColumnCollectionInternal.cs
- TabPageDesigner.cs
- SettingsPropertyWrongTypeException.cs
- KeyInterop.cs
- _TransmitFileOverlappedAsyncResult.cs
- Renderer.cs
- _UriSyntax.cs
- tibetanshape.cs
- TextSearch.cs
- ListBoxItemWrapperAutomationPeer.cs
- RadioButtonAutomationPeer.cs
- CodeExporter.cs
- BlurEffect.cs
- XmlDataSourceNodeDescriptor.cs
- SslStream.cs
- Line.cs
- Bitmap.cs
- httpstaticobjectscollection.cs
- ListViewSortEventArgs.cs
- MessageSecurityProtocol.cs
- ThreadStartException.cs
- AppDomainManager.cs
- MenuItemCollection.cs
- RelatedImageListAttribute.cs
- XslNumber.cs
- CookieProtection.cs
- UnitySerializationHolder.cs
- RequestCachePolicy.cs
- GridViewCancelEditEventArgs.cs
- DocumentViewerBase.cs
- FileReservationCollection.cs
- SerializationSectionGroup.cs
- RemoveStoryboard.cs
- Type.cs
- _emptywebproxy.cs
- LayoutInformation.cs
- XmlSchemaSimpleType.cs
- _NestedMultipleAsyncResult.cs
- TextRunCacheImp.cs
- OracleMonthSpan.cs
- GuidelineSet.cs
- ViewDesigner.cs
- ClientSettingsSection.cs
- AQNBuilder.cs