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
- ContainsRowNumberChecker.cs
- ReadContentAsBinaryHelper.cs
- DesignerValidatorAdapter.cs
- EntityKey.cs
- Permission.cs
- ZipFileInfo.cs
- DataGridViewRowConverter.cs
- MethodBody.cs
- TrustLevelCollection.cs
- TransformProviderWrapper.cs
- DynamicExpression.cs
- EntityDataSourceChangingEventArgs.cs
- EventData.cs
- ObjectParameterCollection.cs
- EntityParameterCollection.cs
- CapabilitiesPattern.cs
- SQLString.cs
- RestHandler.cs
- DataRowCollection.cs
- FolderLevelBuildProvider.cs
- SeekStoryboard.cs
- HandleCollector.cs
- ObjectManager.cs
- ImplicitInputBrush.cs
- XmlNullResolver.cs
- DecimalStorage.cs
- IsolatedStorageFileStream.cs
- EdmTypeAttribute.cs
- Literal.cs
- Pair.cs
- XmlSchemaChoice.cs
- RepeaterItemEventArgs.cs
- KeyConverter.cs
- CommandDevice.cs
- DataControlField.cs
- ErrorStyle.cs
- CodeTypeReference.cs
- SecurityTraceRecordHelper.cs
- PeerMessageDispatcher.cs
- HttpCapabilitiesSectionHandler.cs
- CmsInterop.cs
- BufferAllocator.cs
- SqlDataSourceConfigureSelectPanel.cs
- DrawingContextWalker.cs
- WebPartConnectionsCancelEventArgs.cs
- OleDbInfoMessageEvent.cs
- SupportingTokenSpecification.cs
- OdbcConnectionFactory.cs
- PackageStore.cs
- RelationshipWrapper.cs
- TdsEnums.cs
- RequestUriProcessor.cs
- TextPattern.cs
- UrlMapping.cs
- OdbcEnvironment.cs
- XmlTextAttribute.cs
- DesignSurfaceEvent.cs
- BadImageFormatException.cs
- mediaeventshelper.cs
- ContentTextAutomationPeer.cs
- MdiWindowListStrip.cs
- FactoryGenerator.cs
- TextEffectCollection.cs
- CheckBoxAutomationPeer.cs
- Processor.cs
- QueryTask.cs
- DriveInfo.cs
- Update.cs
- DecimalSumAggregationOperator.cs
- AQNBuilder.cs
- DropDownList.cs
- StreamHelper.cs
- InkPresenter.cs
- ListViewUpdateEventArgs.cs
- GridViewRowCollection.cs
- ToolStripSplitStackLayout.cs
- BinaryVersion.cs
- DuplicateDetector.cs
- Models.cs
- EventMap.cs
- MessageBox.cs
- SqlProvider.cs
- PropertyKey.cs
- EncryptedKey.cs
- PenCursorManager.cs
- Transactions.cs
- XmlEntity.cs
- TextEffect.cs
- BinaryFormatterWriter.cs
- HMACSHA256.cs
- TextServicesHost.cs
- Logging.cs
- QuaternionValueSerializer.cs
- CurrentChangingEventManager.cs
- ManagementExtension.cs
- EventHandlersStore.cs
- MouseGesture.cs
- DataGridItemEventArgs.cs
- StrongNameKeyPair.cs
- ContainerParaClient.cs