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
- ExpressionNormalizer.cs
- ExceptionUtil.cs
- TextViewDesigner.cs
- ServiceMemoryGates.cs
- VirtualDirectoryMapping.cs
- TimeSpanSecondsOrInfiniteConverter.cs
- MultipartContentParser.cs
- UIElement3D.cs
- DeadCharTextComposition.cs
- XmlReader.cs
- OleDbWrapper.cs
- InternalControlCollection.cs
- ReadOnlyDataSourceView.cs
- entityreference_tresulttype.cs
- GridSplitter.cs
- TrackingProfile.cs
- XamlSerializerUtil.cs
- DescendantOverDescendantQuery.cs
- AttributeData.cs
- XmlILTrace.cs
- FixedSOMTable.cs
- GridView.cs
- DeflateStream.cs
- DtcInterfaces.cs
- AtomMaterializer.cs
- BitVec.cs
- ContainsRowNumberChecker.cs
- GACMembershipCondition.cs
- ResourceFallbackManager.cs
- FileStream.cs
- ProtocolsConfiguration.cs
- CounterSampleCalculator.cs
- MobileTextWriter.cs
- Style.cs
- LoggedException.cs
- InteropDesigner.xaml.cs
- PropertyOverridesDialog.cs
- PageAction.cs
- OleDbReferenceCollection.cs
- CompositeFontParser.cs
- IPipelineRuntime.cs
- EntityCommandCompilationException.cs
- DockPanel.cs
- EmitterCache.cs
- URLIdentityPermission.cs
- RefExpr.cs
- MessageEncodingBindingElementImporter.cs
- CaseInsensitiveComparer.cs
- TabRenderer.cs
- LabelInfo.cs
- LayoutUtils.cs
- SqlTypeConverter.cs
- TimeSpanStorage.cs
- TextWriter.cs
- GeometryCombineModeValidation.cs
- BuilderPropertyEntry.cs
- SiteMapSection.cs
- TransformerInfo.cs
- XmlNotation.cs
- XmlDownloadManager.cs
- DragCompletedEventArgs.cs
- MetroSerializationManager.cs
- ApplicationDirectoryMembershipCondition.cs
- DataTableNameHandler.cs
- Oid.cs
- HtmlHead.cs
- SafeRightsManagementSessionHandle.cs
- SystemInfo.cs
- EventArgs.cs
- DropDownList.cs
- LabelEditEvent.cs
- SMSvcHost.cs
- XmlReflectionMember.cs
- KeyMatchBuilder.cs
- EntityWithKeyStrategy.cs
- Utils.cs
- PageThemeParser.cs
- CodeMethodMap.cs
- EntityContainerRelationshipSetEnd.cs
- DialogResultConverter.cs
- ImageMapEventArgs.cs
- ObjectTag.cs
- Int64.cs
- RightsManagementEncryptionTransform.cs
- SslStream.cs
- DispatcherTimer.cs
- QilTernary.cs
- HwndKeyboardInputProvider.cs
- IfAction.cs
- Pool.cs
- ListViewDeletedEventArgs.cs
- DefaultSettingsSection.cs
- SqlUdtInfo.cs
- TextBoxBase.cs
- ShapingEngine.cs
- sqlstateclientmanager.cs
- LiteralSubsegment.cs
- SectionRecord.cs
- Stylus.cs
- CodeVariableReferenceExpression.cs