Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Security / DataProtectionSecurityStateEncoder.cs / 1 / DataProtectionSecurityStateEncoder.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel.Security { using System.Text; using System.Security.Cryptography; public class DataProtectionSecurityStateEncoder : SecurityStateEncoder { byte[] entropy; bool useCurrentUserProtectionScope; public DataProtectionSecurityStateEncoder() : this(true) { // empty } public DataProtectionSecurityStateEncoder(bool useCurrentUserProtectionScope) : this(useCurrentUserProtectionScope, null) { } public DataProtectionSecurityStateEncoder(bool useCurrentUserProtectionScope, byte[] entropy) { this.useCurrentUserProtectionScope = useCurrentUserProtectionScope; if (entropy == null) { this.entropy = null; } else { this.entropy = DiagnosticUtility.Utility.AllocateByteArray(entropy.Length); Buffer.BlockCopy(entropy, 0, this.entropy, 0, entropy.Length); } } public bool UseCurrentUserProtectionScope { get { return this.useCurrentUserProtectionScope; } } public byte[] GetEntropy() { byte[] result = null; if (this.entropy != null) { result = DiagnosticUtility.Utility.AllocateByteArray(this.entropy.Length); Buffer.BlockCopy(this.entropy, 0, result, 0, this.entropy.Length); } return result; } public override string ToString() { StringBuilder result = new StringBuilder(); result.Append(this.GetType().ToString()); result.AppendFormat("{0} UseCurrentUserProtectionScope={1}", Environment.NewLine, this.useCurrentUserProtectionScope); result.AppendFormat("{0} Entropy Length={1}", Environment.NewLine, (this.entropy == null) ? 0 : this.entropy.Length); return result.ToString(); } protected internal override byte[] DecodeSecurityState(byte[] data) { return ProtectedData.Unprotect(data, this.entropy, (this.useCurrentUserProtectionScope) ? DataProtectionScope.CurrentUser : DataProtectionScope.LocalMachine); } protected internal override byte[] EncodeSecurityState(byte[] data) { return ProtectedData.Protect(data, this.entropy, (this.useCurrentUserProtectionScope) ? DataProtectionScope.CurrentUser : DataProtectionScope.LocalMachine); } } } // 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
- TreeNodeCollection.cs
- AssemblyAttributes.cs
- CompensateDesigner.cs
- sitestring.cs
- SqlDataSourceCache.cs
- DataSourceView.cs
- ObjectStateEntryDbUpdatableDataRecord.cs
- SmiContext.cs
- SessionStateUtil.cs
- HtmlInputPassword.cs
- Translator.cs
- Psha1DerivedKeyGenerator.cs
- CommonXSendMessage.cs
- Shape.cs
- DodSequenceMerge.cs
- TreeViewEvent.cs
- SafeFileMappingHandle.cs
- VisualCollection.cs
- StorageModelBuildProvider.cs
- path.cs
- TraceHandler.cs
- IndicShape.cs
- ComponentGuaranteesAttribute.cs
- HierarchicalDataBoundControl.cs
- TreeNodeBindingCollection.cs
- QueryPageSettingsEventArgs.cs
- Point3DAnimationUsingKeyFrames.cs
- TableChangeProcessor.cs
- counter.cs
- SafeRegistryHandle.cs
- SchemaImporter.cs
- CodeEventReferenceExpression.cs
- AppModelKnownContentFactory.cs
- DbConnectionPoolGroup.cs
- EventNotify.cs
- DataServiceProviderMethods.cs
- Grid.cs
- TypeUtil.cs
- PropertyValueUIItem.cs
- ImpersonateTokenRef.cs
- WebAdminConfigurationHelper.cs
- Configuration.cs
- PlainXmlDeserializer.cs
- SqlProcedureAttribute.cs
- NameSpaceExtractor.cs
- RemotingConfiguration.cs
- documentsequencetextpointer.cs
- ZoneMembershipCondition.cs
- FontStyleConverter.cs
- OfTypeExpression.cs
- TableColumn.cs
- WinEventTracker.cs
- StreamInfo.cs
- Int32Rect.cs
- Control.cs
- CacheMode.cs
- GACIdentityPermission.cs
- CompilerHelpers.cs
- EntityDataSourceDesigner.cs
- ValueUtilsSmi.cs
- LockedAssemblyCache.cs
- MarshalByRefObject.cs
- Boolean.cs
- Currency.cs
- TextRangeEditLists.cs
- Int32Animation.cs
- CommonRemoteMemoryBlock.cs
- StatusStrip.cs
- Ray3DHitTestResult.cs
- __Filters.cs
- ResourceWriter.cs
- EntitySetDataBindingList.cs
- StrokeCollection.cs
- BamlResourceSerializer.cs
- UTF7Encoding.cs
- XmlConvert.cs
- SimpleHandlerBuildProvider.cs
- StringAnimationBase.cs
- CheckBoxPopupAdapter.cs
- SQLDouble.cs
- ArrayWithOffset.cs
- RightsController.cs
- FacetChecker.cs
- PromptEventArgs.cs
- XsdBuildProvider.cs
- WindowsContainer.cs
- TimerEventSubscription.cs
- ExtensionElement.cs
- SettingsPropertyNotFoundException.cs
- HttpStaticObjectsCollectionWrapper.cs
- SmtpDigestAuthenticationModule.cs
- SynchronizedDispatch.cs
- FixedHighlight.cs
- CheckPair.cs
- BindMarkupExtensionSerializer.cs
- ServiceParser.cs
- SrgsToken.cs
- DataTableExtensions.cs
- ProtocolState.cs
- PassportAuthentication.cs