Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- InkCollectionBehavior.cs
- BufferedGraphicsManager.cs
- ConfigXmlCDataSection.cs
- BufferedStream.cs
- ModifiableIteratorCollection.cs
- TimeEnumHelper.cs
- CommentGlyph.cs
- FileCodeGroup.cs
- XamlInt32CollectionSerializer.cs
- ParameterBuilder.cs
- LowerCaseStringConverter.cs
- SafeRightsManagementPubHandle.cs
- RegexGroup.cs
- MemberAccessException.cs
- DataGridViewImageColumn.cs
- ToolStripScrollButton.cs
- AccessibleObject.cs
- DataGridViewAutoSizeColumnsModeEventArgs.cs
- CheckedPointers.cs
- SessionSwitchEventArgs.cs
- Timer.cs
- NativeCppClassAttribute.cs
- UInt64Converter.cs
- CopyOnWriteList.cs
- PageContent.cs
- TemplateColumn.cs
- ArrangedElement.cs
- BaseConfigurationRecord.cs
- XmlCDATASection.cs
- PrintingPermissionAttribute.cs
- Int16.cs
- CacheMemory.cs
- KoreanCalendar.cs
- TreeWalkHelper.cs
- PixelFormats.cs
- DbConnectionPoolGroup.cs
- HtmlWindow.cs
- StreamGeometryContext.cs
- RichTextBoxAutomationPeer.cs
- OleDbRowUpdatedEvent.cs
- IntSecurity.cs
- XmlSchemaComplexContentExtension.cs
- GridViewPageEventArgs.cs
- ManagementOptions.cs
- OracleCommandSet.cs
- Rect.cs
- DataGridViewLinkCell.cs
- InternalException.cs
- WindowsIdentity.cs
- ProfileWorkflowElement.cs
- TextServicesLoader.cs
- ScriptMethodAttribute.cs
- ExchangeUtilities.cs
- ComponentManagerBroker.cs
- PathSegment.cs
- Help.cs
- KeyTimeConverter.cs
- DetailsViewInsertedEventArgs.cs
- HostedImpersonationContext.cs
- LineSegment.cs
- HostingPreferredMapPath.cs
- VarRemapper.cs
- UnauthorizedWebPart.cs
- SocketException.cs
- MulticastDelegate.cs
- EdmProviderManifest.cs
- PageAsyncTask.cs
- ConfigurationUtility.cs
- VersionConverter.cs
- complextypematerializer.cs
- InitializerFacet.cs
- TypedReference.cs
- BufferModesCollection.cs
- SystemThemeKey.cs
- NetCodeGroup.cs
- RectangleHotSpot.cs
- EncoderFallback.cs
- RightsManagementEncryptionTransform.cs
- ColorDialog.cs
- ListParaClient.cs
- ProcessModelInfo.cs
- TcpTransportManager.cs
- DataServiceContext.cs
- StringUtil.cs
- PlaceHolder.cs
- WindowsHyperlink.cs
- XmlCharCheckingWriter.cs
- URLBuilder.cs
- AuthorizationBehavior.cs
- DeviceSpecificChoiceCollection.cs
- InkCanvasFeedbackAdorner.cs
- EqualityComparer.cs
- PageTheme.cs
- BaseUriWithWildcard.cs
- XmlC14NWriter.cs
- _UriTypeConverter.cs
- TextWriter.cs
- ThreadPool.cs
- TransformDescriptor.cs
- Set.cs