Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Net / System / Net / IntranetCredentialPolicy.cs / 1305376 / 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
- ParentUndoUnit.cs
- FunctionMappingTranslator.cs
- RepeatButtonAutomationPeer.cs
- CodeGeneratorOptions.cs
- CompareValidator.cs
- ClipboardProcessor.cs
- IIS7UserPrincipal.cs
- Schedule.cs
- EdmComplexPropertyAttribute.cs
- SortableBindingList.cs
- DesignerValidatorAdapter.cs
- SQLDoubleStorage.cs
- GacUtil.cs
- TemplatingOptionsDialog.cs
- DataBoundControlHelper.cs
- TableCellAutomationPeer.cs
- safemediahandle.cs
- Clipboard.cs
- BindingOperations.cs
- StructuredTypeEmitter.cs
- HitTestFilterBehavior.cs
- validationstate.cs
- OdbcPermission.cs
- PersonalizationStateQuery.cs
- DataGridItem.cs
- X509RecipientCertificateClientElement.cs
- DocumentEventArgs.cs
- ThemeDirectoryCompiler.cs
- BehaviorEditorPart.cs
- ReferencedCollectionType.cs
- ActivityExecutionFilter.cs
- DocumentXPathNavigator.cs
- CommunicationObjectFaultedException.cs
- PeerServiceMessageContracts.cs
- ManagementBaseObject.cs
- Rect.cs
- UInt32.cs
- MeshGeometry3D.cs
- TraceRecord.cs
- TextElementCollection.cs
- ListViewPagedDataSource.cs
- ProviderUtil.cs
- ControlTemplate.cs
- TextRunProperties.cs
- HwndAppCommandInputProvider.cs
- RightsManagementPermission.cs
- SettingsPropertyWrongTypeException.cs
- CodeDirectoryCompiler.cs
- UrlPath.cs
- RestHandler.cs
- StringFunctions.cs
- SymLanguageVendor.cs
- BamlLocalizer.cs
- ItemContainerPattern.cs
- ResourcePart.cs
- VisualBasicValue.cs
- LocalIdCollection.cs
- InlineObject.cs
- Queue.cs
- Compiler.cs
- CredentialCache.cs
- MdbDataFileEditor.cs
- JsonWriterDelegator.cs
- ImageClickEventArgs.cs
- CursorInteropHelper.cs
- UIElementParagraph.cs
- dataprotectionpermissionattribute.cs
- TagPrefixCollection.cs
- XmlSchemaParticle.cs
- Normalizer.cs
- TabItemAutomationPeer.cs
- MulticastNotSupportedException.cs
- ButtonBaseDesigner.cs
- WebPartManager.cs
- FunctionNode.cs
- SqlConnectionManager.cs
- OleStrCAMarshaler.cs
- XmlAtomicValue.cs
- Point3DAnimationBase.cs
- XMLSyntaxException.cs
- BadImageFormatException.cs
- ConfigXmlDocument.cs
- ClaimComparer.cs
- EmptyReadOnlyDictionaryInternal.cs
- DropShadowBitmapEffect.cs
- CroppedBitmap.cs
- BinaryObjectReader.cs
- CompiledELinqQueryState.cs
- DrawingVisual.cs
- ChtmlCommandAdapter.cs
- MetadataFile.cs
- HandledEventArgs.cs
- ApplicationTrust.cs
- TrustLevel.cs
- OutputCacheSettingsSection.cs
- CharEntityEncoderFallback.cs
- DataBinding.cs
- KnownIds.cs
- TokenFactoryBase.cs
- ItemDragEvent.cs