Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / IntSecurity.cs / 1305376 / IntSecurity.cs
namespace System.Web { using System.Web; using System.Web.Util; using System.Security; using System.Security.Permissions; internal static class InternalSecurityPermissions { private static IStackWalk _unrestricted; private static IStackWalk _unmanagedCode; private static IStackWalk _controlPrincipal; private static IStackWalk _reflection; private static IStackWalk _appPathDiscovery; private static IStackWalk _controlThread; private static IStackWalk _levelLow; private static IStackWalk _levelMedium; private static IStackWalk _levelHigh; // // Static permissions as properties, created on demand // internal static IStackWalk Unrestricted { get { if (_unrestricted == null) _unrestricted = new PermissionSet(PermissionState.Unrestricted); Debug.Trace("Permissions", "Unrestricted Set"); return _unrestricted; } } internal static IStackWalk UnmanagedCode { get { if (_unmanagedCode == null) _unmanagedCode = new SecurityPermission(SecurityPermissionFlag.UnmanagedCode); Debug.Trace("Permissions", "UnmanagedCode"); return _unmanagedCode; } } internal static IStackWalk ControlPrincipal { get { if (_controlPrincipal == null) _controlPrincipal = new SecurityPermission(SecurityPermissionFlag.ControlPrincipal); Debug.Trace("Permissions", "ControlPrincipal"); return _controlPrincipal; } } internal static IStackWalk Reflection { get { if (_reflection == null) _reflection = new ReflectionPermission(ReflectionPermissionFlag.MemberAccess); Debug.Trace("Permissions", "Reflection"); return _reflection; } } internal static IStackWalk AppPathDiscovery { get { if (_appPathDiscovery == null) _appPathDiscovery = new FileIOPermission(FileIOPermissionAccess.PathDiscovery, HttpRuntime.AppDomainAppPathInternal); Debug.Trace("Permissions", "AppPathDiscovery"); return _appPathDiscovery; } } internal static IStackWalk ControlThread { get { if (_controlThread == null) _controlThread = new SecurityPermission(SecurityPermissionFlag.ControlThread); Debug.Trace("Permissions", "ControlThread"); return _controlThread; } } internal static IStackWalk AspNetHostingPermissionLevelLow { get { if (_levelLow == null) _levelLow = new AspNetHostingPermission(AspNetHostingPermissionLevel.Low); Debug.Trace("Permissions", "AspNetHostingPermissionLevelLow"); return _levelLow; } } internal static IStackWalk AspNetHostingPermissionLevelMedium { get { if (_levelMedium == null) _levelMedium = new AspNetHostingPermission(AspNetHostingPermissionLevel.Medium); Debug.Trace("Permissions", "AspNetHostingPermissionLevelMedium"); return _levelMedium; } } internal static IStackWalk AspNetHostingPermissionLevelHigh { get { if (_levelHigh == null) _levelHigh = new AspNetHostingPermission(AspNetHostingPermissionLevel.High); Debug.Trace("Permissions", "AspNetHostingPermissionLevelHigh"); return _levelHigh; } } // Parameterized permissions internal static IStackWalk FileReadAccess(String filename) { Debug.Trace("Permissions", "FileReadAccess(" + filename + ")"); return new FileIOPermission(FileIOPermissionAccess.Read, filename); } internal static IStackWalk FileWriteAccess(String filename) { Debug.Trace("Permissions", "FileWriteAccess(" + filename + ")"); return new FileIOPermission(FileIOPermissionAccess.Write | FileIOPermissionAccess.Append, filename); } internal static IStackWalk PathDiscovery(String path) { Debug.Trace("Permissions", "PathDiscovery(" + path + ")"); return new FileIOPermission(FileIOPermissionAccess.PathDiscovery, path); } } } // 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
- EvidenceTypeDescriptor.cs
- HttpBrowserCapabilitiesBase.cs
- FigureParagraph.cs
- BasePropertyDescriptor.cs
- RowParagraph.cs
- ParameterElement.cs
- GeneratedCodeAttribute.cs
- AccessControlEntry.cs
- SaveFileDialog.cs
- StackSpiller.Temps.cs
- IPAddressCollection.cs
- CssStyleCollection.cs
- DoubleAnimation.cs
- Configuration.cs
- rsa.cs
- CustomActivityDesigner.cs
- EntitySqlQueryState.cs
- DataListItemCollection.cs
- Calendar.cs
- ExpressionPrefixAttribute.cs
- ContainerUIElement3D.cs
- MaskedTextProvider.cs
- InputScopeNameConverter.cs
- MulticastNotSupportedException.cs
- Quaternion.cs
- PolicyLevel.cs
- ReadOnlyDictionary.cs
- SecurityElement.cs
- BidPrivateBase.cs
- Button.cs
- QilSortKey.cs
- ObjectSecurity.cs
- IHttpResponseInternal.cs
- CodeMemberField.cs
- XslTransform.cs
- Form.cs
- ConcurrentQueue.cs
- DbProviderConfigurationHandler.cs
- FileChangesMonitor.cs
- SqlConnectionManager.cs
- InvalidCommandTreeException.cs
- Size3DValueSerializer.cs
- GlobalEventManager.cs
- WebPartManagerInternals.cs
- DropShadowBitmapEffect.cs
- TemplateInstanceAttribute.cs
- SchemaInfo.cs
- HtmlInputHidden.cs
- UInt16Converter.cs
- LinkGrep.cs
- SourceLineInfo.cs
- OdbcConnectionOpen.cs
- COAUTHINFO.cs
- CompiledXpathExpr.cs
- RewritingValidator.cs
- CollectionViewProxy.cs
- ToolTipService.cs
- SliderAutomationPeer.cs
- UIPermission.cs
- UpDownBase.cs
- HScrollProperties.cs
- FunctionParameter.cs
- CryptoHelper.cs
- GetKeyedHashRequest.cs
- Soap.cs
- KeyboardEventArgs.cs
- RelatedCurrencyManager.cs
- ParenthesizePropertyNameAttribute.cs
- TableLayoutPanelCellPosition.cs
- MultilineStringConverter.cs
- ObjectDataSourceDisposingEventArgs.cs
- PageFunction.cs
- ValidationRule.cs
- HttpCookieCollection.cs
- TrackingAnnotationCollection.cs
- MbpInfo.cs
- StateDesigner.Layouts.cs
- X509Utils.cs
- DispatcherHooks.cs
- ContractMethodInfo.cs
- SendMailErrorEventArgs.cs
- Socket.cs
- ServiceDescriptionReflector.cs
- DropTarget.cs
- Utils.cs
- TileBrush.cs
- ClientConfigurationHost.cs
- FolderLevelBuildProviderCollection.cs
- PackageRelationship.cs
- HexParser.cs
- SessionStateItemCollection.cs
- SiteMapHierarchicalDataSourceView.cs
- UnsafeNativeMethods.cs
- RegexGroupCollection.cs
- SelectionList.cs
- WorkflowOperationContext.cs
- DetailsViewUpdateEventArgs.cs
- PropertyFilterAttribute.cs
- Membership.cs
- OpCellTreeNode.cs