Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / Xml / System / Xml / XmlSecureResolver.cs / 1 / XmlSecureResolver.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml { using System.Net; using System.Security; using System.Security.Policy; using System.Security.Permissions; [PermissionSetAttribute( SecurityAction.InheritanceDemand, Name = "FullTrust" )] public class XmlSecureResolver : XmlResolver { XmlResolver resolver; PermissionSet permissionSet; public XmlSecureResolver(XmlResolver resolver, string securityUrl) : this(resolver, CreateEvidenceForUrl(securityUrl)) {} public XmlSecureResolver(XmlResolver resolver, Evidence evidence) : this(resolver, SecurityManager.ResolvePolicy(evidence)) {} public XmlSecureResolver(XmlResolver resolver, PermissionSet permissionSet) { this.resolver = resolver; this.permissionSet = permissionSet; } public override ICredentials Credentials { set { resolver.Credentials = value; } } public override object GetEntity(Uri absoluteUri, string role, Type ofObjectToReturn) { permissionSet.PermitOnly(); return resolver.GetEntity(absoluteUri, role, ofObjectToReturn); } public override Uri ResolveUri(Uri baseUri, string relativeUri) { return resolver.ResolveUri(baseUri, relativeUri); } public static Evidence CreateEvidenceForUrl(string securityUrl) { Evidence evidence = new Evidence(); if (securityUrl != null && securityUrl.Length > 0) { evidence.AddHost(new Url(securityUrl)); evidence.AddHost(Zone.CreateFromUrl(securityUrl)); Uri uri = new Uri(securityUrl, UriKind.RelativeOrAbsolute); if (uri.IsAbsoluteUri && !uri.IsFile) { evidence.AddHost(Site.CreateFromUrl(securityUrl)); } } return evidence; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml { using System.Net; using System.Security; using System.Security.Policy; using System.Security.Permissions; [PermissionSetAttribute( SecurityAction.InheritanceDemand, Name = "FullTrust" )] public class XmlSecureResolver : XmlResolver { XmlResolver resolver; PermissionSet permissionSet; public XmlSecureResolver(XmlResolver resolver, string securityUrl) : this(resolver, CreateEvidenceForUrl(securityUrl)) {} public XmlSecureResolver(XmlResolver resolver, Evidence evidence) : this(resolver, SecurityManager.ResolvePolicy(evidence)) {} public XmlSecureResolver(XmlResolver resolver, PermissionSet permissionSet) { this.resolver = resolver; this.permissionSet = permissionSet; } public override ICredentials Credentials { set { resolver.Credentials = value; } } public override object GetEntity(Uri absoluteUri, string role, Type ofObjectToReturn) { permissionSet.PermitOnly(); return resolver.GetEntity(absoluteUri, role, ofObjectToReturn); } public override Uri ResolveUri(Uri baseUri, string relativeUri) { return resolver.ResolveUri(baseUri, relativeUri); } public static Evidence CreateEvidenceForUrl(string securityUrl) { Evidence evidence = new Evidence(); if (securityUrl != null && securityUrl.Length > 0) { evidence.AddHost(new Url(securityUrl)); evidence.AddHost(Zone.CreateFromUrl(securityUrl)); Uri uri = new Uri(securityUrl, UriKind.RelativeOrAbsolute); if (uri.IsAbsoluteUri && !uri.IsFile) { evidence.AddHost(Site.CreateFromUrl(securityUrl)); } } return evidence; } } } // 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
- Token.cs
- VScrollProperties.cs
- ThumbAutomationPeer.cs
- DataFormat.cs
- SchemaCollectionCompiler.cs
- Pool.cs
- ContentHostHelper.cs
- CopyNamespacesAction.cs
- EmbeddedMailObject.cs
- TreeIterators.cs
- CategoryNameCollection.cs
- Panel.cs
- LocalBuilder.cs
- Event.cs
- TextEditorLists.cs
- ApplicationManager.cs
- ProcessHostServerConfig.cs
- Transactions.cs
- DataGridSortCommandEventArgs.cs
- StateWorkerRequest.cs
- SafeLocalMemHandle.cs
- UncommonField.cs
- RIPEMD160Managed.cs
- PageCopyCount.cs
- ChineseLunisolarCalendar.cs
- ResourceManagerWrapper.cs
- GlyphElement.cs
- TableItemPattern.cs
- DirtyTextRange.cs
- BitmapEffectDrawingContextState.cs
- XmlSchemaExporter.cs
- ToolStripDropDown.cs
- JournalEntryListConverter.cs
- PropertyEmitterBase.cs
- SqlProfileProvider.cs
- OpenFileDialog.cs
- CodeThrowExceptionStatement.cs
- JoinGraph.cs
- TableAdapterManagerGenerator.cs
- LogPolicy.cs
- FileSecurity.cs
- ElementMarkupObject.cs
- TextServicesCompartmentContext.cs
- StructuralCache.cs
- GeneralTransform3DTo2D.cs
- SingleObjectCollection.cs
- DispatchChannelSink.cs
- RowToParametersTransformer.cs
- CollectionConverter.cs
- CompilerCollection.cs
- GCHandleCookieTable.cs
- CompilerGlobalScopeAttribute.cs
- CollectionBuilder.cs
- DocumentEventArgs.cs
- TransactionFlowOption.cs
- DbDataAdapter.cs
- RenderTargetBitmap.cs
- FormattedText.cs
- AutoScrollExpandMessageFilter.cs
- EventLogConfiguration.cs
- AutoResetEvent.cs
- RuleElement.cs
- UserNameSecurityToken.cs
- TrackingMemoryStream.cs
- MailWriter.cs
- FontStretch.cs
- Group.cs
- ConditionCollection.cs
- XmlSchemaComplexContent.cs
- ApplicationGesture.cs
- Native.cs
- SqlAliaser.cs
- SerialPort.cs
- ListViewSortEventArgs.cs
- ListDictionaryInternal.cs
- CompilationRelaxations.cs
- GeneralTransform3D.cs
- ReferentialConstraintRoleElement.cs
- DiagnosticSection.cs
- LocatorManager.cs
- Keywords.cs
- TextParaClient.cs
- PageThemeBuildProvider.cs
- HebrewCalendar.cs
- TextControlDesigner.cs
- TextSelection.cs
- sqlnorm.cs
- Tokenizer.cs
- EmptyEnumerator.cs
- BamlWriter.cs
- AppModelKnownContentFactory.cs
- MsmqHostedTransportConfiguration.cs
- StrokeNodeData.cs
- PersistChildrenAttribute.cs
- ContentPosition.cs
- NullableFloatAverageAggregationOperator.cs
- WebPartEditVerb.cs
- SiteOfOriginPart.cs
- InstallerTypeAttribute.cs
- HostedTcpTransportManager.cs