Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / System / Security / Attributes.cs / 1 / Attributes.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== using System.Runtime.InteropServices; namespace System.Security { // DynamicSecurityMethodAttribute: // Indicates that calling the target method requires space for a security // object to be allocated on the callers stack. This attribute is only ever // set on certain security methods defined within mscorlib. [AttributeUsage(AttributeTargets.Method, AllowMultiple = true, Inherited = false )] sealed internal class DynamicSecurityMethodAttribute : System.Attribute { } // SuppressUnmanagedCodeSecurityAttribute: // Indicates that the target P/Invoke method(s) should skip the per-call // security checked for unmanaged code permission. [AttributeUsage(AttributeTargets.Method | AttributeTargets.Class | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = true, Inherited = false )] [System.Runtime.InteropServices.ComVisible(true)] sealed public class SuppressUnmanagedCodeSecurityAttribute : System.Attribute { } // UnverifiableCodeAttribute: // Indicates that the target module contains unverifiable code. [AttributeUsage(AttributeTargets.Module, AllowMultiple = true, Inherited = false )] [System.Runtime.InteropServices.ComVisible(true)] sealed public class UnverifiableCodeAttribute : System.Attribute { } // AllowPartiallyTrustedCallersAttribute: // Indicates that the Assembly is secure and can be used by untrusted // and semitrusted clients // For v.1, this is valid only on Assemblies, but could be expanded to // include Module, Method, class [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = false, Inherited = false )] [System.Runtime.InteropServices.ComVisible(true)] sealed public class AllowPartiallyTrustedCallersAttribute : System.Attribute { public AllowPartiallyTrustedCallersAttribute () { } } public enum SecurityCriticalScope { Explicit = 0, Everything = 0x1 } // SecurityCriticalAttribute // Indicates that the decorated code or assembly performs security critical operations (e.g. Assert, "unsafe", LinkDemand, etc.) // The attribute can be placed on most targets, except on arguments/return values. // The attribute applies only to the specific target and not to everything underneath it (similar to 'public' qualifier) // i.e. marking an assembly SecurityCritical doesn't imply all types within the assembly are critical, // and similarly marking a type critical doesn't imply all of its members are critical // For code to perform security critical actions, both the code (e.g. method, field, etc.) and the assembly must be decorated // with the SecurityCriticalAttribute. [AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Module | AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Enum | AttributeTargets.Constructor | AttributeTargets.Method | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = false, Inherited = false )] sealed public class SecurityCriticalAttribute : System.Attribute { internal SecurityCriticalScope _val; public SecurityCriticalAttribute () {} public SecurityCriticalAttribute(SecurityCriticalScope scope) { _val = scope; } public SecurityCriticalScope Scope { get { return _val; } } } // SecurityTreatAsSafeAttribute: // Indicates that the code may contain violations to the security critical rules (e.g. transitions from // critical to non-public transparent, transparent to non-public critical, etc.), has been audited for // security concerns and is considered security clean. // At assembly-scope, all rule checks will be suppressed within the assembly and for calls made against the assembly. // At type-scope, all rule checks will be suppressed for members within the type and for calls made against the type. // At member level (e.g. field and method) the code will be treated as public - i.e. no rule checks for the members. [AttributeUsage(AttributeTargets.All, AllowMultiple = false, Inherited = false )] sealed public class SecurityTreatAsSafeAttribute : System.Attribute { public SecurityTreatAsSafeAttribute () { } } // SecurityTransparentAttribute: // Indicates the assembly contains only transparent code. // Security critical actions will be restricted or converted into less critical actions. For example, // Assert will be restricted, SuppressUnmanagedCode, LinkDemand, unsafe, and unverifiable code will be converted // into Full-Demands. [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = false, Inherited = false )] sealed public class SecurityTransparentAttribute : System.Attribute { public SecurityTransparentAttribute () {} } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ValueUnavailableException.cs
- HtmlInputButton.cs
- TrustManager.cs
- SchemaImporterExtension.cs
- TrustSection.cs
- X509Certificate.cs
- ThreadExceptionEvent.cs
- MulticastIPAddressInformationCollection.cs
- ContentElement.cs
- BypassElementCollection.cs
- LoginStatusDesigner.cs
- CompilerState.cs
- XmlSchemaImport.cs
- ParameterModifier.cs
- BounceEase.cs
- AttributeParameterInfo.cs
- assemblycache.cs
- QuaternionRotation3D.cs
- XmlDocumentType.cs
- MapPathBasedVirtualPathProvider.cs
- SQLByteStorage.cs
- DataListCommandEventArgs.cs
- EncryptedData.cs
- Int32Rect.cs
- BufferAllocator.cs
- AlternateViewCollection.cs
- MDIClient.cs
- DataKeyArray.cs
- PersonalizationStateInfoCollection.cs
- LocalizationComments.cs
- Baml2006KeyRecord.cs
- ObjectAnimationUsingKeyFrames.cs
- TextServicesCompartmentContext.cs
- CodeCompiler.cs
- IdSpace.cs
- WpfGeneratedKnownTypes.cs
- XmlBindingWorker.cs
- XmlDictionaryString.cs
- SqlDataRecord.cs
- TdsParser.cs
- RegistrationServices.cs
- ToolStripPanelRenderEventArgs.cs
- Themes.cs
- CompositeDataBoundControl.cs
- SqlProviderUtilities.cs
- lengthconverter.cs
- AsyncResult.cs
- ListBoxAutomationPeer.cs
- InkCanvasSelectionAdorner.cs
- XmlFormatReaderGenerator.cs
- CompilerTypeWithParams.cs
- EntityModelSchemaGenerator.cs
- GreenMethods.cs
- BevelBitmapEffect.cs
- WebScriptMetadataFormatter.cs
- StyleHelper.cs
- CodeDomDecompiler.cs
- PixelFormats.cs
- DateTimeConverter2.cs
- AndMessageFilter.cs
- EventLogReader.cs
- NullableIntMinMaxAggregationOperator.cs
- DoubleAnimation.cs
- ArglessEventHandlerProxy.cs
- RelationshipNavigation.cs
- ResourceWriter.cs
- ParserOptions.cs
- MemberCollection.cs
- ConfigurationLoader.cs
- TableHeaderCell.cs
- DataGridViewBand.cs
- Margins.cs
- OleDbParameterCollection.cs
- __Filters.cs
- ConnectorDragDropGlyph.cs
- DBSchemaTable.cs
- HMACSHA256.cs
- QilGenerator.cs
- ToggleButtonAutomationPeer.cs
- IntegrationExceptionEventArgs.cs
- UnsafeNativeMethods.cs
- XmlNamespaceDeclarationsAttribute.cs
- InputReferenceExpression.cs
- CompositeDesignerAccessibleObject.cs
- ParameterReplacerVisitor.cs
- InheritedPropertyChangedEventArgs.cs
- TypedElement.cs
- GcSettings.cs
- CodeArrayIndexerExpression.cs
- UnsafeNativeMethodsPenimc.cs
- AssemblyResourceLoader.cs
- CodeLabeledStatement.cs
- ContextMenuService.cs
- WindowsListViewGroup.cs
- HttpServerUtilityWrapper.cs
- Application.cs
- StrokeCollection2.cs
- IteratorFilter.cs
- LocalBuilder.cs
- CompoundFileStorageReference.cs