Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / Shared / MS / Internal / securitycriticaldataClass.cs / 1 / securitycriticaldataClass.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: // This is a helper struct to facilate the storage of Security critical data ( aka "Plutonium") // It's primary purpose is to do put a [SecurityCritical] on all access to the data. // // What is "critical data" ? This is any data created that required an Assert for it's creation. // As an example - the creation of an HwndWrapper during Dispatcher.Attach. // The current implementation requires the consumer to use the data member only if IsValid is true // // History: // 10/25/05 : akaza Created. // //--------------------------------------------------------------------------- using System ; using System.Security ; #if WINDOWS_BASE using MS.Internal.WindowsBase; #elif PRESENTATION_CORE using MS.Internal.PresentationCore; #elif PRESENTATIONFRAMEWORK using MS.Internal.PresentationFramework; #elif DRT using MS.Internal.Drt; #else #error Attempt to use FriendAccessAllowedAttribute from an unknown assembly. using MS.Internal.YourAssemblyName; #endif namespace MS.Internal { [FriendAccessAllowed] internal class SecurityCriticalDataClass{ /// /// Critical - as this accesses _value which is Critical. /// Safe - as the caller already got the critical value. /// [SecurityCritical, SecurityTreatAsSafe] internal SecurityCriticalDataClass(T value) { _value = value; } //// Critical "by definition" - this class is intended only to store critical data. // internal T Value { [SecurityCritical] get { return _value; } } ////// Critical - by definition as this is a wrapper for Critical data. /// [SecurityCritical] private T _value; } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: // This is a helper struct to facilate the storage of Security critical data ( aka "Plutonium") // It's primary purpose is to do put a [SecurityCritical] on all access to the data. // // What is "critical data" ? This is any data created that required an Assert for it's creation. // As an example - the creation of an HwndWrapper during Dispatcher.Attach. // The current implementation requires the consumer to use the data member only if IsValid is true // // History: // 10/25/05 : akaza Created. // //--------------------------------------------------------------------------- using System ; using System.Security ; #if WINDOWS_BASE using MS.Internal.WindowsBase; #elif PRESENTATION_CORE using MS.Internal.PresentationCore; #elif PRESENTATIONFRAMEWORK using MS.Internal.PresentationFramework; #elif DRT using MS.Internal.Drt; #else #error Attempt to use FriendAccessAllowedAttribute from an unknown assembly. using MS.Internal.YourAssemblyName; #endif namespace MS.Internal { [FriendAccessAllowed] internal class SecurityCriticalDataClass{ /// /// Critical - as this accesses _value which is Critical. /// Safe - as the caller already got the critical value. /// [SecurityCritical, SecurityTreatAsSafe] internal SecurityCriticalDataClass(T value) { _value = value; } //// Critical "by definition" - this class is intended only to store critical data. // internal T Value { [SecurityCritical] get { return _value; } } ////// Critical - by definition as this is a wrapper for Critical data. /// [SecurityCritical] private T _value; } } // 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
- IISMapPath.cs
- SectionVisual.cs
- CapacityStreamGeometryContext.cs
- WindowCollection.cs
- ItemCollection.cs
- MultipleViewPattern.cs
- SecurityAlgorithmSuite.cs
- FileDataSourceCache.cs
- SettingsPropertyNotFoundException.cs
- ComAdminWrapper.cs
- TransformGroup.cs
- MouseWheelEventArgs.cs
- StrokeCollectionDefaultValueFactory.cs
- PrintDialogDesigner.cs
- SvcMapFileSerializer.cs
- StandardBindingImporter.cs
- Expression.cs
- sqlcontext.cs
- FloaterBaseParagraph.cs
- ValidationErrorEventArgs.cs
- ProfilePropertySettings.cs
- ReadWriteControlDesigner.cs
- X509Certificate2.cs
- XmlEnumAttribute.cs
- CoTaskMemHandle.cs
- SqlAggregateChecker.cs
- CustomLineCap.cs
- TimeSpanStorage.cs
- SizeConverter.cs
- XmlNodeList.cs
- EmissiveMaterial.cs
- FlowDocumentPaginator.cs
- RuntimeHelpers.cs
- DBSchemaTable.cs
- PtsPage.cs
- ResourcePool.cs
- ToggleButton.cs
- DataObjectMethodAttribute.cs
- CheckBoxRenderer.cs
- BaseComponentEditor.cs
- ServiceDurableInstanceContextProvider.cs
- ToolStripCollectionEditor.cs
- InputElement.cs
- PrtTicket_Public_Simple.cs
- KeyConverter.cs
- ISCIIEncoding.cs
- ParameterSubsegment.cs
- XmlSchemaFacet.cs
- DataGridViewCellLinkedList.cs
- OverlappedContext.cs
- BufferedReadStream.cs
- WebConfigurationHostFileChange.cs
- Point3D.cs
- DocumentSequenceHighlightLayer.cs
- ServiceObjectContainer.cs
- CrossSiteScriptingValidation.cs
- VisualStateManager.cs
- Operator.cs
- XmlSchemaAny.cs
- TargetInvocationException.cs
- SwitchLevelAttribute.cs
- NotifyCollectionChangedEventArgs.cs
- DbDeleteCommandTree.cs
- PassportPrincipal.cs
- ExtentKey.cs
- TabletDeviceInfo.cs
- cookieexception.cs
- BaseDataListActionList.cs
- Preprocessor.cs
- Overlapped.cs
- PropertyDescriptorComparer.cs
- XmlMembersMapping.cs
- NullableConverter.cs
- RequestCacheValidator.cs
- mediapermission.cs
- HwndSource.cs
- DesignerOptionService.cs
- SignatureResourcePool.cs
- PermissionSet.cs
- AstNode.cs
- SpellerInterop.cs
- BuildProviderCollection.cs
- PersistenceException.cs
- NativeMethods.cs
- ReplyAdapterChannelListener.cs
- SourceInterpreter.cs
- SamlConditions.cs
- TemplatePropertyEntry.cs
- CustomTokenProvider.cs
- Drawing.cs
- SetStoryboardSpeedRatio.cs
- XomlDesignerLoader.cs
- ContainerControl.cs
- WebPartRestoreVerb.cs
- HtmlProps.cs
- CompiledIdentityConstraint.cs
- SqlTypeSystemProvider.cs
- QuaternionRotation3D.cs
- RoleManagerModule.cs
- CapabilitiesUse.cs