Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / infocard / Service / managed / Microsoft / InfoCards / TokenFactoryCredential.cs / 1 / TokenFactoryCredential.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace Microsoft.InfoCards { using System; using System.Collections.Generic; using System.IO; using System.Security.Cryptography; using IDT = Microsoft.InfoCards.Diagnostics.InfoCardTrace; internal enum TokenFactoryCredentialType { Invalid = 0, LocalCredential = -1, UserNamePasswordCredential = 1, SelfIssuedCredential = 2, X509CertificateCredential = 3, KerberosCredential = 4, } // // Summary: // Class to managed and protect credentials collected for access // to token factories. // abstract internal class TokenFactoryCredential : IDisposable { public const int NoCredential = (int)TokenFactoryCredentialType.LocalCredential; TokenFactoryCredentialType m_type; Uri m_cardId; int m_paramIndex; int m_lcid; // // Summary: // Creates an emtpy credential. // protected TokenFactoryCredential( TokenFactoryCredentialType type ) { m_type = type; } public void Dispose() { Dispose( true ); } public virtual void Dispose( bool disposing ) { } // // Summary: // Create a new instance of a TokenFactoryCredential using the specified reader. // public static TokenFactoryCredential CreateFrom( BinaryReader reader, UIAgentRequest request, int lcid ) { TokenFactoryCredential cred; TokenFactoryCredentialType type = (TokenFactoryCredentialType)reader.ReadInt32(); switch( type ) { case TokenFactoryCredentialType.LocalCredential: cred = null; break; case TokenFactoryCredentialType.UserNamePasswordCredential: cred = new UserNameTokenFactoryCredential( ); cred.Deserialize( reader ); break; case TokenFactoryCredentialType.SelfIssuedCredential: cred = new SelfIssuedTokenFactoryCredential( ); cred.Deserialize( reader ); break; case TokenFactoryCredentialType.X509CertificateCredential: cred = new X509CertificateTokenFactoryCredential( request ); cred.Deserialize( reader ); break; case TokenFactoryCredentialType.KerberosCredential: cred = new KerberosTokenFactoryCredential( ); cred.Deserialize( reader ); break; default: IDT.ThrowInvalidArgumentConditional( true, "CredentialType" ); cred = null; break; } if( null != cred ) { cred.LCID = lcid; } return cred; } // // Gets the type of credentials // public int ParameterIndex { get{ return m_paramIndex; } } // // Gets the marshaled TokenFactoryCredentialType value // public TokenFactoryCredentialType CredentialType { get{ return m_type; } } // // LCID for the language that the display token should be in // public int LCID { get { return m_lcid; } set { m_lcid = value; } } // // Get the cardid of the selected card. // public Uri CardId { get{ return m_cardId; } } // // Summary: // Populates the class data from binary form // // Arguments: // reader: The reader that contains the data to populate the class // private void Deserialize( BinaryReader reader ) { // // Byte this point, we have already read the type info, so we skip it here. // m_cardId = new Uri( Utility.DeserializeString( reader ) ); m_paramIndex = reader.ReadInt32(); DeserializeData( reader ); } protected abstract void DeserializeData( BinaryReader reader ); } } // 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
- ProfileElement.cs
- ISCIIEncoding.cs
- InArgument.cs
- WmlMobileTextWriter.cs
- DataGridColumnsPage.cs
- AQNBuilder.cs
- TransformerConfigurationWizardBase.cs
- MSHTMLHost.cs
- CompModSwitches.cs
- ImageButton.cs
- CqlGenerator.cs
- BaseTemplatedMobileComponentEditor.cs
- RetrieveVirtualItemEventArgs.cs
- SimpleTextLine.cs
- XmlSerializerVersionAttribute.cs
- DataTransferEventArgs.cs
- ReflectionUtil.cs
- XmlDomTextWriter.cs
- XmlAttributeCollection.cs
- RemoteWebConfigurationHostServer.cs
- BinaryMethodMessage.cs
- GridSplitter.cs
- DependencySource.cs
- TripleDES.cs
- DesignerRegionCollection.cs
- PrinterResolution.cs
- SynchronousReceiveElement.cs
- DefaultTextStore.cs
- NegotiationTokenProvider.cs
- InternalCache.cs
- CacheChildrenQuery.cs
- FormsAuthenticationCredentials.cs
- SerializationUtilities.cs
- NamedPipeProcessProtocolHandler.cs
- SystemIcmpV6Statistics.cs
- OutOfMemoryException.cs
- SymbolPair.cs
- CallbackValidatorAttribute.cs
- VectorCollection.cs
- WebPartHelpVerb.cs
- ThrowHelper.cs
- DeclarativeCatalogPart.cs
- MulticastNotSupportedException.cs
- ListViewGroup.cs
- InvariantComparer.cs
- RIPEMD160.cs
- BitmapEffectDrawing.cs
- TextDpi.cs
- Bits.cs
- XmlUtil.cs
- BamlResourceContent.cs
- CommittableTransaction.cs
- TableCellAutomationPeer.cs
- AsyncCompletedEventArgs.cs
- TextBlock.cs
- VirtualPath.cs
- UniqueID.cs
- Int32EqualityComparer.cs
- LinqDataSourceUpdateEventArgs.cs
- PostBackTrigger.cs
- HealthMonitoringSection.cs
- HMACMD5.cs
- SelectQueryOperator.cs
- Quad.cs
- SiteIdentityPermission.cs
- ListViewItem.cs
- TransformProviderWrapper.cs
- CellTreeNode.cs
- CmsUtils.cs
- GridItemPattern.cs
- MeshGeometry3D.cs
- XmlSchemaValidationException.cs
- RecordsAffectedEventArgs.cs
- ConnectionPoolManager.cs
- DictionaryGlobals.cs
- ThreadStartException.cs
- LineInfo.cs
- ContainerParaClient.cs
- WebPartExportVerb.cs
- ConnectionPoint.cs
- IIS7WorkerRequest.cs
- SkinBuilder.cs
- TargetPerspective.cs
- CodeAttachEventStatement.cs
- base64Transforms.cs
- PriorityQueue.cs
- DataGridViewHeaderCell.cs
- SortAction.cs
- RotateTransform.cs
- DataRecordInfo.cs
- BlurBitmapEffect.cs
- DataGridViewAutoSizeColumnModeEventArgs.cs
- TextServicesLoader.cs
- StoragePropertyMapping.cs
- VisualStyleElement.cs
- RadioButtonStandardAdapter.cs
- StreamReader.cs
- DbProviderConfigurationHandler.cs
- HopperCache.cs
- ModuleElement.cs