Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- ButtonStandardAdapter.cs
- UniqueIdentifierService.cs
- XmlILStorageConverter.cs
- MenuItem.cs
- CompModHelpers.cs
- ProcessHostServerConfig.cs
- XmlSecureResolver.cs
- PolyQuadraticBezierSegment.cs
- DbgUtil.cs
- WindowsAuthenticationModule.cs
- EventProvider.cs
- SecurityKeyUsage.cs
- HttpWebResponse.cs
- PaginationProgressEventArgs.cs
- DispatcherProcessingDisabled.cs
- FtpRequestCacheValidator.cs
- ErrorRuntimeConfig.cs
- securitycriticaldataformultiplegetandset.cs
- IntellisenseTextBox.cs
- MultiDataTrigger.cs
- ContainerActivationHelper.cs
- Query.cs
- UnknownMessageReceivedEventArgs.cs
- PartialTrustHelpers.cs
- HighlightComponent.cs
- HtmlButton.cs
- XmlQueryCardinality.cs
- DataBinding.cs
- _CookieModule.cs
- StoreConnection.cs
- WpfSharedXamlSchemaContext.cs
- ConfigurationLockCollection.cs
- DebugInfo.cs
- LayoutEditorPart.cs
- SpeakCompletedEventArgs.cs
- SqlDependencyUtils.cs
- ModelService.cs
- TextLineResult.cs
- LineBreakRecord.cs
- TypeExtension.cs
- HostedImpersonationContext.cs
- CodeDirectoryCompiler.cs
- ColumnMapProcessor.cs
- JournalEntry.cs
- WindowsRebar.cs
- util.cs
- ApplicationCommands.cs
- PerfService.cs
- ImpersonateTokenRef.cs
- HtmlForm.cs
- Schema.cs
- IsolatedStorageFileStream.cs
- ReadOnlyDataSource.cs
- DataServiceRequest.cs
- ReflectionHelper.cs
- XPathDocumentBuilder.cs
- ImageCodecInfoPrivate.cs
- VarInfo.cs
- PinnedBufferMemoryStream.cs
- Grant.cs
- NamedObjectList.cs
- PhysicalFontFamily.cs
- _ListenerResponseStream.cs
- ProtectedConfiguration.cs
- ConsumerConnectionPoint.cs
- XmlArrayAttribute.cs
- ComNativeDescriptor.cs
- AccessibleObject.cs
- GraphicsPath.cs
- COMException.cs
- ListViewSelectEventArgs.cs
- RectIndependentAnimationStorage.cs
- Rect.cs
- BindingMemberInfo.cs
- CodeTypeOfExpression.cs
- NonParentingControl.cs
- XmlDocumentFragment.cs
- ShaperBuffers.cs
- BitmapFrameEncode.cs
- HierarchicalDataTemplate.cs
- XamlPointCollectionSerializer.cs
- WebServiceReceiveDesigner.cs
- ColorAnimationBase.cs
- Rectangle.cs
- Pair.cs
- RemoteWebConfigurationHostServer.cs
- SelectedGridItemChangedEvent.cs
- RC2CryptoServiceProvider.cs
- TileBrush.cs
- TypeLoadException.cs
- RestHandlerFactory.cs
- RuntimeCompatibilityAttribute.cs
- QilChoice.cs
- ServiceTimeoutsBehavior.cs
- ContextMenu.cs
- Executor.cs
- WorkflowControlClient.cs
- AsyncContentLoadedEventArgs.cs
- ListItemCollection.cs
- elementinformation.cs