Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MessageSecurityOverHttpElement.cs
- ScrollChrome.cs
- ForEach.cs
- LicenseContext.cs
- BookmarkEventArgs.cs
- DrawingVisualDrawingContext.cs
- UrlMappingCollection.cs
- FlatButtonAppearance.cs
- PathGradientBrush.cs
- altserialization.cs
- HttpRequestCacheValidator.cs
- OracleParameterBinding.cs
- TdsValueSetter.cs
- ActionFrame.cs
- Pens.cs
- BaseUriHelper.cs
- GestureRecognizer.cs
- GlobalDataBindingHandler.cs
- NavigationProperty.cs
- xmlglyphRunInfo.cs
- DataServices.cs
- InputEventArgs.cs
- hwndwrapper.cs
- AssemblyGen.cs
- SQLByteStorage.cs
- GregorianCalendarHelper.cs
- Attributes.cs
- _NegoState.cs
- TextReader.cs
- SspiHelper.cs
- PropertyCondition.cs
- UpdateProgress.cs
- Security.cs
- HttpClientChannel.cs
- NotCondition.cs
- GlyphingCache.cs
- PlatformNotSupportedException.cs
- BookmarkScopeInfo.cs
- EntityDataSourceStatementEditorForm.cs
- ByteKeyFrameCollection.cs
- NativeMethods.cs
- MultiDataTrigger.cs
- Int32.cs
- DSACryptoServiceProvider.cs
- LayoutEngine.cs
- SafeSecurityHelper.cs
- TagElement.cs
- DataGridViewAutoSizeModeEventArgs.cs
- securitycriticaldataClass.cs
- EditorResources.cs
- odbcmetadatafactory.cs
- IDReferencePropertyAttribute.cs
- SamlEvidence.cs
- ActivityExecutionContext.cs
- IList.cs
- Crypto.cs
- ParentUndoUnit.cs
- CultureInfoConverter.cs
- SoapAttributeOverrides.cs
- DirtyTextRange.cs
- DesignerHost.cs
- Path.cs
- VBIdentifierTrimConverter.cs
- SecurityTokenContainer.cs
- RoleService.cs
- TableItemProviderWrapper.cs
- NavigationWindow.cs
- WebPartMovingEventArgs.cs
- MatchAttribute.cs
- XmlReader.cs
- NetSectionGroup.cs
- SimpleWorkerRequest.cs
- ReachPageContentSerializerAsync.cs
- ValueTypeFixupInfo.cs
- BaseTemplateCodeDomTreeGenerator.cs
- ListItemCollection.cs
- WindowsListViewGroupHelper.cs
- CommentAction.cs
- ProfileBuildProvider.cs
- Utils.cs
- ScalarOps.cs
- AliasedExpr.cs
- TreeWalkHelper.cs
- ShapeTypeface.cs
- SHA384Cng.cs
- Operators.cs
- XmlSchemaComplexContent.cs
- ToolStripItem.cs
- CloseSequenceResponse.cs
- StylusPointProperty.cs
- ProcessingInstructionAction.cs
- DescendantOverDescendantQuery.cs
- IntSecurity.cs
- Expander.cs
- Simplifier.cs
- OpCodes.cs
- Timer.cs
- InternalConfirm.cs
- DialogResultConverter.cs
- AlphaSortedEnumConverter.cs