/// <summary> /// Use this to load and configure the Identity Azure Tables into the aspnet identity pipeline. /// Note: <see cref="IdentityBuilder.AddRoles{TRole}"/> prior to calling this methiod in the pipeline if you need Roles functionality, otherwise the RoleStore will not be loaded. /// </summary> /// <typeparam name="TContext">Use or extend <see cref="IdentityCloudContext"/></typeparam> /// <param name="builder"><see cref="IdentityBuilder"/> aspnet identity pipeline</param> /// <param name="configAction"><see cref="IdentityConfiguration"/></param> /// <param name="keyHelper">Use <see cref="DefaultKeyHelper"/> that uses SHA1, <see cref="SHA256KeyHelper"/> or a custom keyhelper that implements <see cref="IKeyHelper"/> </param> /// <returns><see cref="IdentityBuilder"/></returns> public static IdentityBuilder AddAzureTableStores <TContext>(this IdentityBuilder builder, Func <IdentityConfiguration> configAction, IKeyHelper keyHelper = null) where TContext : IdentityCloudContext, new() { builder.Services.AddSingleton <IKeyHelper>(keyHelper ?? new DefaultKeyHelper()); builder.Services.AddSingleton <IdentityConfiguration>(new Func <IServiceProvider, IdentityConfiguration>(p => configAction())); Type contextType = typeof(TContext); builder.Services.AddScoped(contextType, contextType); Type userStoreType = builder.RoleType != null ? typeof(UserStore <, ,>).MakeGenericType(builder.UserType, builder.RoleType, contextType) : typeof(UserOnlyStore <,>).MakeGenericType(builder.UserType, contextType); builder.Services.AddScoped( typeof(IUserStore <>).MakeGenericType(builder.UserType), userStoreType); if (builder.RoleType != null) { Type roleStoreType = typeof(RoleStore <,>).MakeGenericType(builder.RoleType, contextType); builder.Services.AddScoped( typeof(IRoleStore <>).MakeGenericType(builder.RoleType), roleStoreType); } return(builder); }
/// <summary> /// Generates Row, Partition and Id keys. /// All are the same in this case /// </summary> public void GenerateKeys(IKeyHelper keyHelper) { if (string.IsNullOrWhiteSpace(Id)) { Id = keyHelper.GenerateUserId(); } RowKey = PeekRowKey(keyHelper); PartitionKey = RowKey; KeyVersion = keyHelper.KeyVersion; }
internal TextField(ILogger logger, IKeyHelper keyHelper, ICursorProvider cursorProvider, ApplicationWindow applicationWindow, Text text, Text tooltipText) { this.logger = logger; this.keyHelper = keyHelper; this.cursorProvider = cursorProvider; this.applicationWindow = applicationWindow; this.text = text; this.tooltipText = tooltipText; keyCallbacks.Add(Key.Left, leftKeyPressed); keyCallbacks.Add(Key.Right, rightKeyPressed); keyCallbacks.Add(Key.BackSpace, backspaceKeyPressed); keyCallbacks.Add(Key.Delete, deleteKeyPressed); }
public ClaimMigrateRowkey(IKeyHelper keyHelper) { _keyHelper = keyHelper; }
/// <summary> /// Generates the RowKey without setting it on the object. /// </summary> /// <returns></returns> public string PeekRowKey(IKeyHelper keyHelper) { return(keyHelper.GenerateRowKeyIdentityUserLogin(LoginProvider, ProviderKey)); }
/// <summary> /// Generates Row and Id keys. /// Partition key is equal to the UserId /// </summary> public void GenerateKeys(IKeyHelper keyHelper) { Id = Guid.NewGuid().ToString(); RowKey = PeekRowKey(keyHelper); KeyVersion = keyHelper.KeyVersion; }
public EmailMigrateIndex(IKeyHelper keyHelper) { _keyHelper = keyHelper; }
public UserStore(TContext context, IKeyHelper keyHelper, IdentityConfiguration config) : base(context, keyHelper, config) { }
public RoleStore(IdentityCloudContext context, IKeyHelper keyHelper) : base(context, keyHelper) { }
public RoleAndClaimMigrateIndex(IKeyHelper keyHelper) { _keyHelper = keyHelper; }
/// <summary> /// Generates Row and Id keys. /// Partition key is equal to the UserId /// </summary> public void GenerateKeys(IKeyHelper keyHelper) { RowKey = PeekRowKey(keyHelper); PartitionKey = keyHelper.GeneratePartitionKeyIdentityRole(Name); KeyVersion = keyHelper.KeyVersion; }
/// <summary> /// Generates the RowKey without setting it on the object. /// </summary> /// <returns></returns> public string PeekRowKey(IKeyHelper keyHelper) { return(keyHelper.GenerateRowKeyIdentityUserToken(LoginProvider, Name)); }
public RolesMigration(IKeyHelper keyHelper) { _keyHelper = keyHelper; }
/// <summary> /// Generates Row and Id keys. /// Partition key is equal to the UserId /// </summary> public void GenerateKeys(IKeyHelper keyHelper) { RowKey = PeekRowKey(keyHelper); KeyVersion = keyHelper.KeyVersion; }
public UserOnlyStore(IdentityCloudContext context, IKeyHelper keyHelper, IdentityConfiguration config) : base(context, keyHelper, config) { }
public UsersMigration(IKeyHelper keyHelper) { _keyHelper = keyHelper; }
public LoginMigrateIndex(IKeyHelper keyHelper) { _keyHelper = keyHelper; }
/// <summary> /// Generates the RowKey without setting it on the object. /// </summary> /// <returns></returns> public string PeekRowKey(IKeyHelper keyHelper) { return(keyHelper.GenerateRowKeyIdentityRoleClaim(ClaimType, ClaimValue)); }
/// <summary> /// Generates the RowKey without setting it on the object. /// </summary> /// <returns></returns> public string PeekRowKey(IKeyHelper keyHelper) { return(keyHelper.GenerateRowKeyIdentityRole(Name)); }
/// <summary> /// Generates the RowKey without setting it on the object. /// In this case, just returns a key based on username /// </summary> /// <returns></returns> public string PeekRowKey(IKeyHelper keyHelper) { return(keyHelper.GenerateRowKeyUserId(Id)); }