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
- Ticks.cs
- InvalidCastException.cs
- RowToFieldTransformer.cs
- BrowserDefinition.cs
- SecureUICommand.cs
- PhysicalFontFamily.cs
- DbConnectionClosed.cs
- PostBackOptions.cs
- VarRefManager.cs
- UpdateException.cs
- ICspAsymmetricAlgorithm.cs
- CharacterHit.cs
- Calendar.cs
- CompositionTarget.cs
- ReflectTypeDescriptionProvider.cs
- ChildrenQuery.cs
- ComplexTypeEmitter.cs
- DateTimeValueSerializerContext.cs
- HostingEnvironmentSection.cs
- UserPreferenceChangingEventArgs.cs
- ZipIOBlockManager.cs
- AttributeQuery.cs
- PersonalizationStateInfoCollection.cs
- PageParser.cs
- WindowsToolbar.cs
- FolderBrowserDialogDesigner.cs
- SessionSwitchEventArgs.cs
- RangeValidator.cs
- Section.cs
- AttachedPropertyBrowsableAttribute.cs
- StateInitializationDesigner.cs
- DrawingCollection.cs
- ListSurrogate.cs
- LazyTextWriterCreator.cs
- MembershipUser.cs
- Stylesheet.cs
- UmAlQuraCalendar.cs
- SByte.cs
- HashHelper.cs
- HttpApplicationStateWrapper.cs
- Inflater.cs
- CompilerState.cs
- CallSite.cs
- GACMembershipCondition.cs
- CodeBlockBuilder.cs
- MarshalByRefObject.cs
- DoubleConverter.cs
- SemanticValue.cs
- MenuItemStyle.cs
- CategoryValueConverter.cs
- HttpDebugHandler.cs
- DelegateArgumentReference.cs
- ReadOnlyDictionary.cs
- LoginDesigner.cs
- HighlightComponent.cs
- DesignerDataSchemaClass.cs
- ResourceSet.cs
- HashUtility.cs
- ResXFileRef.cs
- SelectionPattern.cs
- TraceInternal.cs
- RowToParametersTransformer.cs
- GridEntry.cs
- SettingsAttributes.cs
- ExecutorLocksHeldException.cs
- OdbcCommand.cs
- DataGridViewCellStyleContentChangedEventArgs.cs
- UIAgentCrashedException.cs
- PropertyTabChangedEvent.cs
- ConfigXmlCDataSection.cs
- HttpModule.cs
- DocumentReferenceCollection.cs
- FormsAuthenticationTicket.cs
- FloaterParagraph.cs
- DoubleAnimationClockResource.cs
- TreeNodeBindingCollection.cs
- InnerItemCollectionView.cs
- TextUtf8RawTextWriter.cs
- SyndicationItem.cs
- EditCommandColumn.cs
- DllHostedComPlusServiceHost.cs
- WebControlAdapter.cs
- AnimationTimeline.cs
- SynchronizationLockException.cs
- SocketPermission.cs
- WebPartActionVerb.cs
- WizardPanel.cs
- MembershipUser.cs
- ComplexTypeEmitter.cs
- indexingfiltermarshaler.cs
- InboundActivityHelper.cs
- HwndSubclass.cs
- Regex.cs
- SecurityPermission.cs
- FixedHighlight.cs
- DataServiceQuery.cs
- RegularExpressionValidator.cs
- Matrix3D.cs
- WeakReadOnlyCollection.cs
- DataMemberConverter.cs