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
- XmlValidatingReaderImpl.cs
- Number.cs
- GeneralTransform3D.cs
- SqlDataSourceSelectingEventArgs.cs
- StreamHelper.cs
- ToggleButton.cs
- EncoderParameter.cs
- HttpListenerContext.cs
- TextTreeInsertUndoUnit.cs
- SqlTransaction.cs
- DataGridViewTopRowAccessibleObject.cs
- DirectionalLight.cs
- SimpleRecyclingCache.cs
- IRCollection.cs
- XPathExpr.cs
- InheritedPropertyChangedEventArgs.cs
- Selector.cs
- ByteConverter.cs
- NavigationEventArgs.cs
- AnnotationObservableCollection.cs
- PreviewPrintController.cs
- EntityStoreSchemaGenerator.cs
- AdRotator.cs
- DrawingAttributeSerializer.cs
- _BasicClient.cs
- IndexedGlyphRun.cs
- OleDbPermission.cs
- OpenTypeCommon.cs
- securitycriticaldataClass.cs
- FormView.cs
- XmlReaderSettings.cs
- TextSimpleMarkerProperties.cs
- FlowPosition.cs
- OverloadGroupAttribute.cs
- NativeMethods.cs
- DateTimeValueSerializer.cs
- HtmlTextArea.cs
- EventDescriptorCollection.cs
- SolidColorBrush.cs
- DoubleLinkList.cs
- RectConverter.cs
- DocumentApplicationJournalEntryEventArgs.cs
- FileAuthorizationModule.cs
- ToolbarAUtomationPeer.cs
- UrlAuthFailedErrorFormatter.cs
- ListViewInsertedEventArgs.cs
- GenericTypeParameterBuilder.cs
- GridViewSortEventArgs.cs
- EncoderExceptionFallback.cs
- EmptyEnumerator.cs
- COM2FontConverter.cs
- DirectoryNotFoundException.cs
- DSASignatureFormatter.cs
- CharacterBuffer.cs
- StoreContentChangedEventArgs.cs
- ProxyWebPart.cs
- PeerTransportSecuritySettings.cs
- SessionStateModule.cs
- WorkItem.cs
- CodeCompiler.cs
- FieldTemplateUserControl.cs
- DateTimePicker.cs
- ArraySortHelper.cs
- WindowsClaimSet.cs
- MatchingStyle.cs
- ListItemConverter.cs
- EtwTrace.cs
- LightweightCodeGenerator.cs
- CertificateReferenceElement.cs
- SHA512Managed.cs
- WorkflowItemsPresenter.cs
- ScrollableControl.cs
- IncrementalCompileAnalyzer.cs
- CfgArc.cs
- HtmlTable.cs
- CodeSnippetTypeMember.cs
- PopupControlService.cs
- DataSourceView.cs
- UpdateRecord.cs
- SeverityFilter.cs
- CaseStatement.cs
- DataGridViewColumnCollectionDialog.cs
- TriggerBase.cs
- FixedTextView.cs
- ArgumentException.cs
- PackageDocument.cs
- NewItemsContextMenuStrip.cs
- StateManagedCollection.cs
- SoapHelper.cs
- SqlBooleanizer.cs
- XmlDeclaration.cs
- HtmlInputFile.cs
- TypefaceMetricsCache.cs
- PaperSource.cs
- HttpConfigurationSystem.cs
- ParseChildrenAsPropertiesAttribute.cs
- NameNode.cs
- MsmqIntegrationAppDomainProtocolHandler.cs
- DataListItemCollection.cs
- Thickness.cs