Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / IdentityModel / System / IdentityModel / Selectors / CustomUserNameSecurityTokenAuthenticator.cs / 1305376 / CustomUserNameSecurityTokenAuthenticator.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.IdentityModel.Selectors { using System.Collections.Generic; using System.Collections.ObjectModel; using System.IdentityModel.Claims; using System.IdentityModel.Policy; using System.IdentityModel.Tokens; using System.Security.Principal; public class CustomUserNameSecurityTokenAuthenticator : UserNameSecurityTokenAuthenticator { UserNamePasswordValidator validator; public CustomUserNameSecurityTokenAuthenticator(UserNamePasswordValidator validator) { if (validator == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("validator"); this.validator = validator; } protected override ReadOnlyCollectionValidateUserNamePasswordCore(string userName, string password) { this.validator.Validate(userName, password); return SecurityUtils.CreateAuthorizationPolicies(new UserNameClaimSet(userName, validator.GetType().Name)); } class UserNameClaimSet : DefaultClaimSet, IIdentityInfo { IIdentity identity; public UserNameClaimSet(string userName, string authType) { if (userName == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("userName"); this.identity = SecurityUtils.CreateIdentity(userName, authType); List claims = new List (2); claims.Add(new Claim(ClaimTypes.Name, userName, Rights.Identity)); claims.Add(Claim.CreateNameClaim(userName)); Initialize(ClaimSet.System, claims); } public IIdentity Identity { get { return this.identity; } } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.IdentityModel.Selectors { using System.Collections.Generic; using System.Collections.ObjectModel; using System.IdentityModel.Claims; using System.IdentityModel.Policy; using System.IdentityModel.Tokens; using System.Security.Principal; public class CustomUserNameSecurityTokenAuthenticator : UserNameSecurityTokenAuthenticator { UserNamePasswordValidator validator; public CustomUserNameSecurityTokenAuthenticator(UserNamePasswordValidator validator) { if (validator == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("validator"); this.validator = validator; } protected override ReadOnlyCollection ValidateUserNamePasswordCore(string userName, string password) { this.validator.Validate(userName, password); return SecurityUtils.CreateAuthorizationPolicies(new UserNameClaimSet(userName, validator.GetType().Name)); } class UserNameClaimSet : DefaultClaimSet, IIdentityInfo { IIdentity identity; public UserNameClaimSet(string userName, string authType) { if (userName == null) throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("userName"); this.identity = SecurityUtils.CreateIdentity(userName, authType); List claims = new List (2); claims.Add(new Claim(ClaimTypes.Name, userName, Rights.Identity)); claims.Add(Claim.CreateNameClaim(userName)); Initialize(ClaimSet.System, claims); } public IIdentity Identity { get { return this.identity; } } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Menu.cs
- ConstructorBuilder.cs
- TrackingDataItemValue.cs
- IdSpace.cs
- PnrpPermission.cs
- StringValidatorAttribute.cs
- IriParsingElement.cs
- ObjectStorage.cs
- PointLightBase.cs
- KeyedPriorityQueue.cs
- EffectiveValueEntry.cs
- UInt64Converter.cs
- DataGridViewComboBoxEditingControl.cs
- ImageClickEventArgs.cs
- DataListCommandEventArgs.cs
- DataGridViewUtilities.cs
- Funcletizer.cs
- WindowsAltTab.cs
- AssemblyHash.cs
- NotImplementedException.cs
- SiteMapSection.cs
- EmbeddedMailObject.cs
- PageWrapper.cs
- SeverityFilter.cs
- SafeRightsManagementEnvironmentHandle.cs
- FunctionQuery.cs
- PrintControllerWithStatusDialog.cs
- WebProxyScriptElement.cs
- UrlPath.cs
- SerializationStore.cs
- LiteralControl.cs
- ViewManagerAttribute.cs
- QueryAccessibilityHelpEvent.cs
- WCFServiceClientProxyGenerator.cs
- ProfileService.cs
- TypeSystemProvider.cs
- KeyTime.cs
- WebPartVerbsEventArgs.cs
- NavigationExpr.cs
- CaseCqlBlock.cs
- WebResourceAttribute.cs
- XLinq.cs
- MsmqIntegrationBindingElement.cs
- ObjectItemCollectionAssemblyCacheEntry.cs
- AddInServer.cs
- WasEndpointConfigContainer.cs
- GridPatternIdentifiers.cs
- CharStorage.cs
- DataReceivedEventArgs.cs
- UrlMappingsSection.cs
- SafeNativeMethods.cs
- IUnknownConstantAttribute.cs
- OledbConnectionStringbuilder.cs
- MergeLocalizationDirectives.cs
- Globals.cs
- WebBrowserEvent.cs
- Win32PrintDialog.cs
- MetadataCacheItem.cs
- HttpProfileBase.cs
- ChangePasswordDesigner.cs
- InfiniteTimeSpanConverter.cs
- CfgArc.cs
- Message.cs
- DataTable.cs
- WorkflowViewManager.cs
- ResXResourceWriter.cs
- ConsumerConnectionPointCollection.cs
- XmlQueryContext.cs
- FontFamilyValueSerializer.cs
- DLinqAssociationProvider.cs
- HttpChannelHelper.cs
- FileDialogPermission.cs
- SystemColorTracker.cs
- XPathBinder.cs
- RtType.cs
- InputBuffer.cs
- WebBrowserHelper.cs
- KeyConstraint.cs
- TypeGeneratedEventArgs.cs
- WsiProfilesElementCollection.cs
- DrawingGroup.cs
- TypeInformation.cs
- GeometryDrawing.cs
- DocumentReference.cs
- MenuItemStyleCollection.cs
- SqlRowUpdatedEvent.cs
- MarginsConverter.cs
- FreeFormDesigner.cs
- ContentValidator.cs
- Certificate.cs
- QuestionEventArgs.cs
- StatusBarPanel.cs
- AuthenticationModuleElementCollection.cs
- PlatformNotSupportedException.cs
- FixUpCollection.cs
- FileDialogCustomPlacesCollection.cs
- NetMsmqSecurityElement.cs
- PersistenceTypeAttribute.cs
- ObjectListField.cs
- Utils.cs