Show / Hide Table of Contents

Class MultitenantIdentityBuilder

Helper functions for configuring multi-tenant identity services.

Inheritance
Object
Microsoft.AspNetCore.Identity.IdentityBuilder
ExtendedIdentityBuilder
MultitenantIdentityBuilder
Inherited Members
ExtendedIdentityBuilder.OrganisationType
ExtendedIdentityBuilder.PersonType
ExtendedIdentityBuilder.AuditType
ExtendedIdentityBuilder.AddTokenProvider(String, Type)
ExtendedIdentityBuilder.AddTemplateRoleFactory<TFactory>()
ExtendedIdentityBuilder.AddOrganisations<TOrganisation>()
ExtendedIdentityBuilder.AddOrganisationStore<T>()
ExtendedIdentityBuilder.AddOrganisationManager<TOrganisationManager>()
ExtendedIdentityBuilder.AddPersonValidator<TPersonValidator>()
ExtendedIdentityBuilder.AddPersonStore<T>()
ExtendedIdentityBuilder.AddPersonManager<TPersonManager>()
ExtendedIdentityBuilder.AddUserPictureProvider<TUserPictureProvider>()
ExtendedIdentityBuilder.AddAuditCleanupService()
ExtendedIdentityBuilder.AddAuditCleanupService(Type)
ExtendedIdentityBuilder.AddAuditStore<T>()
ExtendedIdentityBuilder.AddIPAddressLocation(IPAddressLocationOptions)
ExtendedIdentityBuilder.AddIPAddressLocationStore<T>()
Microsoft.AspNetCore.Identity.IdentityBuilder.AddUserValidator<TValidator>()
Microsoft.AspNetCore.Identity.IdentityBuilder.AddClaimsPrincipalFactory<TFactory>()
Microsoft.AspNetCore.Identity.IdentityBuilder.AddErrorDescriber<TDescriber>()
Microsoft.AspNetCore.Identity.IdentityBuilder.AddPasswordValidator<TValidator>()
Microsoft.AspNetCore.Identity.IdentityBuilder.AddUserStore<TStore>()
Microsoft.AspNetCore.Identity.IdentityBuilder.AddTokenProvider<TProvider>(System.String)
IdentityBuilder.AddUserManager<TUserManager>()
IdentityBuilder.AddRoles<TRole>()
Microsoft.AspNetCore.Identity.IdentityBuilder.AddRoleValidator<TRole>()
IdentityBuilder.AddPersonalDataProtection<TProtector, TKeyRing>()
Microsoft.AspNetCore.Identity.IdentityBuilder.AddRoleStore<TStore>()
Microsoft.AspNetCore.Identity.IdentityBuilder.AddRoleManager<TRoleManager>()
IdentityBuilder.UserType
IdentityBuilder.RoleType
Microsoft.AspNetCore.Identity.IdentityBuilder.Services
Object.Equals(Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: IRM.AspNetCore.Identity
Assembly: IRM.AspNetCore.Identity.dll
Syntax
public class MultitenantIdentityBuilder : ExtendedIdentityBuilder

Constructors

MultitenantIdentityBuilder(Type, Type, Type, Type, Type, IServiceCollection)

Creates a new instance of MultitenantIdentityBuilder.

Declaration
public MultitenantIdentityBuilder(Type user, Type role, Type person, Type organisation, Type tenantOidcSetting, IServiceCollection services)
Parameters
System.Type user

The System.Type to use for the users.

System.Type role

The System.Type to use for the roles.

System.Type person

The System.Type to use for the persons.

System.Type organisation

The System.Type to use for the organisations.

System.Type tenantOidcSetting

The System.Type to use for the tenant OpenID Connect setting.

Microsoft.Extensions.DependencyInjection.IServiceCollection services

The Microsoft.Extensions.DependencyInjection.IServiceCollection to attach to.

MultitenantIdentityBuilder(Type, Type, Type, Type, Type, Type, IServiceCollection)

Creates a new instance of MultitenantIdentityBuilder.

Declaration
protected MultitenantIdentityBuilder(Type audit, Type user, Type role, Type person, Type organisation, Type tenantOidcSetting, IServiceCollection services)
Parameters
System.Type audit

The System.Type to use for the auditing.

System.Type user

The System.Type to use for the users.

System.Type role

The System.Type to use for the roles.

System.Type person

The System.Type to use for the persons.

System.Type organisation

The System.Type to use for the organisations.

System.Type tenantOidcSetting

The System.Type to use for the tenant OpenID Connect setting.

Microsoft.Extensions.DependencyInjection.IServiceCollection services

The Microsoft.Extensions.DependencyInjection.IServiceCollection to attach to.

Properties

TenantOidcSettingType

Gets the System.Type used for tenant OpenID Connect settings.

Declaration
public Type TenantOidcSettingType { get; }
Property Value
System.Type

The System.Type used for tenant OpenID Connect settings.

Methods

AddAuditing<TAudit>()

Adds and configures auditing for the specified Auditing type.

Declaration
public MultitenantIdentityBuilder AddAuditing<TAudit>()
Returns
MultitenantIdentityBuilder

An ExtendedIdentityBuilder for creating and configuring the identity system.

Type Parameters
TAudit

The type representing a Audit in the system.

AddClaimFilter<TFilter, TUser>()

Adds a IClaimFilter<TUser> that can be used to manipulate the claims for the user signing in.

Declaration
public MultitenantIdentityBuilder AddClaimFilter<TFilter, TUser>()
    where TFilter : class, IClaimFilter<TUser> where TUser : class, IUser
Returns
MultitenantIdentityBuilder

The current MultitenantIdentityBuilder instance.

Type Parameters
TFilter

The type of sign-in claim filter to use.

TUser

The type of user.

AddClaimFilter<TFilter, TUser>(Int32)

Adds a IClaimFilter<TUser> that can be used to manipulate the claims for the user signing in.

Declaration
public MultitenantIdentityBuilder AddClaimFilter<TFilter, TUser>(int order)
    where TFilter : class, IClaimFilter<TUser> where TUser : class, IUser
Parameters
System.Int32 order

Returns
MultitenantIdentityBuilder

The current MultitenantIdentityBuilder instance.

Type Parameters
TFilter

The type of sign-in claim filter to use.

TUser

The type of user.

AddMultitenantRoleStore<T>()

Adds a IMultitenantUserStore<TUser> for the RoleType.

Declaration
public MultitenantIdentityBuilder AddMultitenantRoleStore<T>()
    where T : class
Returns
MultitenantIdentityBuilder

The current MultitenantIdentityBuilder instance.

Type Parameters
T

The role store type.

Remarks

Don't forget to configure a ITenantAccessor.

AddMultitenantUserStore<T>()

Adds an IMultitenantUserStore<TUser> for the UserType.

Declaration
public MultitenantIdentityBuilder AddMultitenantUserStore<T>()
    where T : class
Returns
MultitenantIdentityBuilder

The current MultitenantIdentityBuilder instance.

Type Parameters
T

The user store type.

Remarks

Don't forget to configure a ITenantAccessor.

AddPersons<TPerson>()

Adds Person related services for TPerson, including IPersonValidator, PersonManager.

Declaration
public override ExtendedIdentityBuilder AddPersons<TPerson>()
    where TPerson : class, IPerson
Returns
ExtendedIdentityBuilder

The current ExtendedIdentityBuilder instance.

Type Parameters
TPerson

The person type.

Overrides
ExtendedIdentityBuilder.AddPersons<TPerson>()

AddTenantAuthenticationSettingsStore<T>()

Adds an ITenantConfigurationStore<TTenantOidcSetting> for the UserType.

Declaration
public MultitenantIdentityBuilder AddTenantAuthenticationSettingsStore<T>()
    where T : class
Returns
MultitenantIdentityBuilder

The current MultitenantIdentityBuilder instance.

Type Parameters
T

The concrete tenant configuration store.

AddTenantConfigurationStore<T>()

Adds an ITenantConfigurationStore<TTenantOidcSetting> for the UserType.

Declaration
public MultitenantIdentityBuilder AddTenantConfigurationStore<T>()
    where T : class
Returns
MultitenantIdentityBuilder

The current MultitenantIdentityBuilder instance.

Type Parameters
T

The concrete tenant configuration store.

Remarks

Don't forget to configure a ITenantAccessor.

Extension Methods

IdentityBuilderExtensions.AddIP2LocationLiteDatabase<T>(T, IPAddressLocationOptions)
ExtendedIdentityBuilderExtensions.AddOrganisationStore(ExtendedIdentityBuilder, Type)
ExtendedIdentityBuilderExtensions.AddOrganisationStore(MultitenantIdentityBuilder, Type)
ExtendedIdentityBuilderExtensions.AddPersonStore(ExtendedIdentityBuilder, Type)
ExtendedIdentityBuilderExtensions.AddPersonStore(MultitenantIdentityBuilder, Type)
ExtendedIdentityBuilderExtensions.AddOrganisationCaches(ExtendedIdentityBuilder, Type, Type)
ExtendedIdentityBuilderExtensions.AddOrganisationCaches(MultitenantIdentityBuilder, Type, Type)
ExtendedIdentityBuilderExtensions.AddOrganisationStoreCache(ExtendedIdentityBuilder)
ExtendedIdentityBuilderExtensions.AddOrganisationStoreCache(ExtendedIdentityBuilder, Type)
ExtendedIdentityBuilderExtensions.AddOrganisationStoreCache(MultitenantIdentityBuilder)
ExtendedIdentityBuilderExtensions.AddOrganisationStoreCache(MultitenantIdentityBuilder, Type)
ExtendedIdentityBuilderExtensions.AddPersonStoreCache(ExtendedIdentityBuilder)
ExtendedIdentityBuilderExtensions.AddPersonStoreCache(ExtendedIdentityBuilder, Type)
ExtendedIdentityBuilderExtensions.AddPersonStoreCache(MultitenantIdentityBuilder)
ExtendedIdentityBuilderExtensions.AddPersonStoreCache(MultitenantIdentityBuilder, Type)
ExtendedIdentityBuilderExtensions.AddUserClaimsPrincipalCache(ExtendedIdentityBuilder)
ExtendedIdentityBuilderExtensions.AddUserClaimsPrincipalCache(MultitenantIdentityBuilder)
IRM.AspNetCore.Identity.ExtendedIdentityBuilderExtensions.AddUserStoreCache(IRM.AspNetCore.Identity.ExtendedIdentityBuilder)
IRM.AspNetCore.Identity.ExtendedIdentityBuilderExtensions.AddUserStoreCache(IRM.AspNetCore.Identity.MultitenantIdentityBuilder)
IdentityEntityFrameworkBuilderExtensions.AddEntityFrameworkStores<TContext>(ExtendedIdentityBuilder)
IdentityEntityFrameworkBuilderExtensions.AddEntityFrameworkStores<TContext>(MultitenantIdentityBuilder)
IdentityEntityFrameworkBuilderExtensions.AddEntityFrameworkSearchStore(ExtendedIdentityBuilder)
IdentityEntityFrameworkBuilderExtensions.AddEntityFrameworkSearchStore<TListUser, TContext>(ExtendedIdentityBuilder)
IdentityEntityFrameworkBuilderExtensions.AddEntityFrameworkSearchStore(MultitenantIdentityBuilder)
IdentityEntityFrameworkBuilderExtensions.AddEntityFrameworkSearchStore<TListUser, TContext>(MultitenantIdentityBuilder)
IdentityEntityFrameworkBuilderExtensions.AddEntityFrameworkOrganisationStores<TContext>(ExtendedIdentityBuilder)
IdentityEntityFrameworkBuilderExtensions.AddEntityFrameworkOrganisationStores<TContext>(MultitenantIdentityBuilder)
IdentityEntityFrameworkBuilderExtensions.AddCachedEntityFrameworkOrganisationStores<TContext>(ExtendedIdentityBuilder)
IdentityEntityFrameworkBuilderExtensions.AddCacheEntityFrameworkOrganisationStores<TContext>(MultitenantIdentityBuilder)
IRM.AspNetCore.Identity.IdentityBuilderExtensions.AddIpstackLocationService<T>(T, System.String, IRM.AspNetCore.Identity.IPAddressLocationOptions)
IRM.AspNetCore.Identity.IdentityBuilderExtensions.AddIpstackLocationService<T>(T, System.String, System.String, IRM.AspNetCore.Identity.IPAddressLocationOptions)
IdentityBuilderUIExtensions.AddDefaultSignInUI<TBuilder>(TBuilder, String)
IdentityBuilderUIExtensions.AddDefaultSignInUI<TBuilder>(TBuilder, Action<IdentitySignInUIOptions>)
IdentityBuilderUIExtensions.AddDefaultConfigurationUI<TBuilder>(TBuilder)
IdentityBuilderUIExtensions.AddDefaultConfigurationApi<TBuilder>(TBuilder)
IdentityBuilderUIExtensions.AddDefaultAdminUI<TListUserType>(IdentityBuilder, String, Action<IdentityAdminUIOptions>)
IdentityBuilderUIExtensions.AddDefaultAdminApi<TListUserType>(IdentityBuilder, String, Action<IdentityAdminUIOptions>)
IdentityBuilderUIExtensions.AddGravatarAndInitialsPictureProvider<TBuilder>(TBuilder, String)
IdentityBuilderUIExtensions.AddGravatarPictureProvider<TBuilder>(TBuilder)
IdentityBuilderUIExtensions.AddLinkLogin<TBuilder>(TBuilder, String)
IdentityBuilderUIExtensions.AddLinkLogin<TBuilder>(TBuilder, Action<LinkLoginOptions>)
Back to top Generated by DocFX