Add missing doc comments
This commit is contained in:
parent
f73f668e2b
commit
ec4c08d11a
|
|
@ -9,6 +9,9 @@ using Microsoft.Extensions.DependencyInjection.Extensions;
|
||||||
|
|
||||||
namespace Microsoft.Extensions.DependencyInjection
|
namespace Microsoft.Extensions.DependencyInjection
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Contains extension methods to <see cref="IdentityBuilder"/> for adding entity framework stores.
|
||||||
|
/// </summary>
|
||||||
public static class IdentityEntityFrameworkBuilderExtensions
|
public static class IdentityEntityFrameworkBuilderExtensions
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
||||||
|
|
@ -32,11 +32,19 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public virtual string ClaimValue { get; set; }
|
public virtual string ClaimValue { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Constructs a new claim with the type and value.
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
public virtual Claim ToClaim()
|
public virtual Claim ToClaim()
|
||||||
{
|
{
|
||||||
return new Claim(ClaimType, ClaimValue);
|
return new Claim(ClaimType, ClaimValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Initializes by copying ClaimType and ClaimValue from the other claim.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="other">The claim to initialize from.</param>
|
||||||
public virtual void InitializeFromClaim(Claim other)
|
public virtual void InitializeFromClaim(Claim other)
|
||||||
{
|
{
|
||||||
ClaimType = other?.Type;
|
ClaimType = other?.Type;
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,11 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
public class RoleStore<TRole> : RoleStore<TRole, DbContext, string>
|
public class RoleStore<TRole> : RoleStore<TRole, DbContext, string>
|
||||||
where TRole : IdentityRole<string>
|
where TRole : IdentityRole<string>
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Constructs a new instance of <see cref="RoleStore{TRole}"/>.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="context">The <see cref="DbContext"/>.</param>
|
||||||
|
/// <param name="describer">The <see cref="IdentityErrorDescriber"/>.</param>
|
||||||
public RoleStore(DbContext context, IdentityErrorDescriber describer = null) : base(context, describer) { }
|
public RoleStore(DbContext context, IdentityErrorDescriber describer = null) : base(context, describer) { }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -31,6 +36,11 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
where TRole : IdentityRole<string>
|
where TRole : IdentityRole<string>
|
||||||
where TContext : DbContext
|
where TContext : DbContext
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Constructs a new instance of <see cref="RoleStore{TRole, TContext}"/>.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="context">The <see cref="DbContext"/>.</param>
|
||||||
|
/// <param name="describer">The <see cref="IdentityErrorDescriber"/>.</param>
|
||||||
public RoleStore(TContext context, IdentityErrorDescriber describer = null) : base(context, describer) { }
|
public RoleStore(TContext context, IdentityErrorDescriber describer = null) : base(context, describer) { }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -47,10 +57,19 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
where TKey : IEquatable<TKey>
|
where TKey : IEquatable<TKey>
|
||||||
where TContext : DbContext
|
where TContext : DbContext
|
||||||
{
|
{
|
||||||
public RoleStore(TContext context, IdentityErrorDescriber describer = null) : base(context, describer)
|
/// <summary>
|
||||||
{
|
/// Constructs a new instance of <see cref="RoleStore{TRole, TContext, TKey}"/>.
|
||||||
}
|
/// </summary>
|
||||||
|
/// <param name="context">The <see cref="DbContext"/>.</param>
|
||||||
|
/// <param name="describer">The <see cref="IdentityErrorDescriber"/>.</param>
|
||||||
|
public RoleStore(TContext context, IdentityErrorDescriber describer = null) : base(context, describer) { }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Creates a entity representing a role claim.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="role">The associated role.</param>
|
||||||
|
/// <param name="claim">The associated claim.</param>
|
||||||
|
/// <returns>The role claim entity.</returns>
|
||||||
protected override IdentityRoleClaim<TKey> CreateRoleClaim(TRole role, Claim claim)
|
protected override IdentityRoleClaim<TKey> CreateRoleClaim(TRole role, Claim claim)
|
||||||
{
|
{
|
||||||
return new IdentityRoleClaim<TKey> { RoleId = role.Id, ClaimType = claim.Type, ClaimValue = claim.Value };
|
return new IdentityRoleClaim<TKey> { RoleId = role.Id, ClaimType = claim.Type, ClaimValue = claim.Value };
|
||||||
|
|
@ -74,6 +93,11 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
where TUserRole : IdentityUserRole<TKey>
|
where TUserRole : IdentityUserRole<TKey>
|
||||||
where TRoleClaim : IdentityRoleClaim<TKey>
|
where TRoleClaim : IdentityRoleClaim<TKey>
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Constructs a new instance of <see cref="RoleStore{TRole, TContext, TKey, TUserRole, TRoleClaim}"/>.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="context">The <see cref="DbContext"/>.</param>
|
||||||
|
/// <param name="describer">The <see cref="IdentityErrorDescriber"/>.</param>
|
||||||
public RoleStore(TContext context, IdentityErrorDescriber describer = null)
|
public RoleStore(TContext context, IdentityErrorDescriber describer = null)
|
||||||
{
|
{
|
||||||
if (context == null)
|
if (context == null)
|
||||||
|
|
@ -333,6 +357,9 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
return Task.FromResult(0);
|
return Task.FromResult(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Throws if this class has been disposed.
|
||||||
|
/// </summary>
|
||||||
protected void ThrowIfDisposed()
|
protected void ThrowIfDisposed()
|
||||||
{
|
{
|
||||||
if (_disposed)
|
if (_disposed)
|
||||||
|
|
@ -427,9 +454,9 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Creates a entity representing a role claim.
|
/// Creates a entity representing a role claim.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="role"></param>
|
/// <param name="role">The associated role.</param>
|
||||||
/// <param name="claim"></param>
|
/// <param name="claim">The associated claim.</param>
|
||||||
/// <returns></returns>
|
/// <returns>The role claim entity.</returns>
|
||||||
protected abstract TRoleClaim CreateRoleClaim(TRole role, Claim claim);
|
protected abstract TRoleClaim CreateRoleClaim(TRole role, Claim claim);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,11 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class UserStore : UserStore<IdentityUser<string>>
|
public class UserStore : UserStore<IdentityUser<string>>
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Constructs a new instance of <see cref="UserStore"/>.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="context">The <see cref="DbContext"/>.</param>
|
||||||
|
/// <param name="describer">The <see cref="IdentityErrorDescriber"/>.</param>
|
||||||
public UserStore(DbContext context, IdentityErrorDescriber describer = null) : base(context, describer) { }
|
public UserStore(DbContext context, IdentityErrorDescriber describer = null) : base(context, describer) { }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -29,6 +34,11 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
public class UserStore<TUser> : UserStore<TUser, IdentityRole, DbContext, string>
|
public class UserStore<TUser> : UserStore<TUser, IdentityRole, DbContext, string>
|
||||||
where TUser : IdentityUser<string>, new()
|
where TUser : IdentityUser<string>, new()
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Constructs a new instance of <see cref="UserStore{TUser}"/>.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="context">The <see cref="DbContext"/>.</param>
|
||||||
|
/// <param name="describer">The <see cref="IdentityErrorDescriber"/>.</param>
|
||||||
public UserStore(DbContext context, IdentityErrorDescriber describer = null) : base(context, describer) { }
|
public UserStore(DbContext context, IdentityErrorDescriber describer = null) : base(context, describer) { }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -43,8 +53,14 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
where TRole : IdentityRole<string>
|
where TRole : IdentityRole<string>
|
||||||
where TContext : DbContext
|
where TContext : DbContext
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Constructs a new instance of <see cref="UserStore{TUser, TRole, TContext}"/>.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="context">The <see cref="DbContext"/>.</param>
|
||||||
|
/// <param name="describer">The <see cref="IdentityErrorDescriber"/>.</param>
|
||||||
public UserStore(TContext context, IdentityErrorDescriber describer = null) : base(context, describer) { }
|
public UserStore(TContext context, IdentityErrorDescriber describer = null) : base(context, describer) { }
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a new instance of a persistence store for the specified user and role types.
|
/// Represents a new instance of a persistence store for the specified user and role types.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
@ -58,8 +74,19 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
where TContext : DbContext
|
where TContext : DbContext
|
||||||
where TKey : IEquatable<TKey>
|
where TKey : IEquatable<TKey>
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Constructs a new instance of <see cref="UserStore{TUser, TRole, TContext, TKey}"/>.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="context">The <see cref="DbContext"/>.</param>
|
||||||
|
/// <param name="describer">The <see cref="IdentityErrorDescriber"/>.</param>
|
||||||
public UserStore(TContext context, IdentityErrorDescriber describer = null) : base(context, describer) { }
|
public UserStore(TContext context, IdentityErrorDescriber describer = null) : base(context, describer) { }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Called to create a new instance of a <see cref="IdentityUserRole{TKey}"/>.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="user">The associated user.</param>
|
||||||
|
/// <param name="role">The associated role.</param>
|
||||||
|
/// <returns></returns>
|
||||||
protected override IdentityUserRole<TKey> CreateUserRole(TUser user, TRole role)
|
protected override IdentityUserRole<TKey> CreateUserRole(TUser user, TRole role)
|
||||||
{
|
{
|
||||||
return new IdentityUserRole<TKey>()
|
return new IdentityUserRole<TKey>()
|
||||||
|
|
@ -69,6 +96,12 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Called to create a new instance of a <see cref="IdentityUserClaim{TKey}"/>.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="user">The associated user.</param>
|
||||||
|
/// <param name="claim">The associated claim.</param>
|
||||||
|
/// <returns></returns>
|
||||||
protected override IdentityUserClaim<TKey> CreateUserClaim(TUser user, Claim claim)
|
protected override IdentityUserClaim<TKey> CreateUserClaim(TUser user, Claim claim)
|
||||||
{
|
{
|
||||||
var userClaim = new IdentityUserClaim<TKey> { UserId = user.Id };
|
var userClaim = new IdentityUserClaim<TKey> { UserId = user.Id };
|
||||||
|
|
@ -76,6 +109,12 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
return userClaim;
|
return userClaim;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Called to create a new instance of a <see cref="IdentityUserLogin{TKey}"/>.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="user">The associated user.</param>
|
||||||
|
/// <param name="login">The sasociated login.</param>
|
||||||
|
/// <returns></returns>
|
||||||
protected override IdentityUserLogin<TKey> CreateUserLogin(TUser user, UserLoginInfo login)
|
protected override IdentityUserLogin<TKey> CreateUserLogin(TUser user, UserLoginInfo login)
|
||||||
{
|
{
|
||||||
return new IdentityUserLogin<TKey>
|
return new IdentityUserLogin<TKey>
|
||||||
|
|
@ -87,6 +126,14 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Called to create a new instance of a <see cref="IdentityUserToken{TKey}"/>.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="user">The associated user.</param>
|
||||||
|
/// <param name="loginProvider">The associated login provider.</param>
|
||||||
|
/// <param name="name">The name of the user token.</param>
|
||||||
|
/// <param name="value">The value of the user token.</param>
|
||||||
|
/// <returns></returns>
|
||||||
protected override IdentityUserToken<TKey> CreateUserToken(TUser user, string loginProvider, string name, string value)
|
protected override IdentityUserToken<TKey> CreateUserToken(TUser user, string loginProvider, string name, string value)
|
||||||
{
|
{
|
||||||
return new IdentityUserToken<TKey>
|
return new IdentityUserToken<TKey>
|
||||||
|
|
@ -603,6 +650,9 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Throws if this class has been disposed.
|
||||||
|
/// </summary>
|
||||||
protected void ThrowIfDisposed()
|
protected void ThrowIfDisposed()
|
||||||
{
|
{
|
||||||
if (_disposed)
|
if (_disposed)
|
||||||
|
|
@ -1289,7 +1339,15 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
return UserTokens.SingleOrDefaultAsync(l => l.UserId.Equals(userId) && l.LoginProvider == loginProvider && l.Name == name, cancellationToken);
|
return UserTokens.SingleOrDefaultAsync(l => l.UserId.Equals(userId) && l.LoginProvider == loginProvider && l.Name == name, cancellationToken);
|
||||||
}
|
}
|
||||||
|
|
||||||
// <inheritdoc>
|
/// <summary>
|
||||||
|
/// Sets the token value for a particular user.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="user">The user.</param>
|
||||||
|
/// <param name="loginProvider">The authentication provider for the token.</param>
|
||||||
|
/// <param name="name">The name of the token.</param>
|
||||||
|
/// <param name="value">The value of the token.</param>
|
||||||
|
/// <param name="cancellationToken">The <see cref="CancellationToken"/> used to propagate notifications that the operation should be canceled.</param>
|
||||||
|
/// <returns>The <see cref="Task"/> that represents the asynchronous operation.</returns>
|
||||||
public virtual async Task SetTokenAsync(TUser user, string loginProvider, string name, string value, CancellationToken cancellationToken)
|
public virtual async Task SetTokenAsync(TUser user, string loginProvider, string name, string value, CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
cancellationToken.ThrowIfCancellationRequested();
|
cancellationToken.ThrowIfCancellationRequested();
|
||||||
|
|
@ -1311,6 +1369,14 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Deletes a token for a user.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="user">The user.</param>
|
||||||
|
/// <param name="loginProvider">The authentication provider for the token.</param>
|
||||||
|
/// <param name="name">The name of the token.</param>
|
||||||
|
/// <param name="cancellationToken">The <see cref="CancellationToken"/> used to propagate notifications that the operation should be canceled.</param>
|
||||||
|
/// <returns>The <see cref="Task"/> that represents the asynchronous operation.</returns>
|
||||||
public async Task RemoveTokenAsync(TUser user, string loginProvider, string name, CancellationToken cancellationToken)
|
public async Task RemoveTokenAsync(TUser user, string loginProvider, string name, CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
cancellationToken.ThrowIfCancellationRequested();
|
cancellationToken.ThrowIfCancellationRequested();
|
||||||
|
|
@ -1328,6 +1394,14 @@ namespace Microsoft.AspNetCore.Identity.EntityFrameworkCore
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns the token value.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="user">The user.</param>
|
||||||
|
/// <param name="loginProvider">The authentication provider for the token.</param>
|
||||||
|
/// <param name="name">The name of the token.</param>
|
||||||
|
/// <param name="cancellationToken">The <see cref="CancellationToken"/> used to propagate notifications that the operation should be canceled.</param>
|
||||||
|
/// <returns>The <see cref="Task"/> that represents the asynchronous operation.</returns>
|
||||||
public async Task<string> GetTokenAsync(TUser user, string loginProvider, string name, CancellationToken cancellationToken)
|
public async Task<string> GetTokenAsync(TUser user, string loginProvider, string name, CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
cancellationToken.ThrowIfCancellationRequested();
|
cancellationToken.ThrowIfCancellationRequested();
|
||||||
|
|
|
||||||
|
|
@ -4,9 +4,6 @@
|
||||||
"buildOptions": {
|
"buildOptions": {
|
||||||
"warningsAsErrors": true,
|
"warningsAsErrors": true,
|
||||||
"keyFile": "../../tools/Key.snk",
|
"keyFile": "../../tools/Key.snk",
|
||||||
"nowarn": [
|
|
||||||
"CS1591"
|
|
||||||
],
|
|
||||||
"xmlDoc": true
|
"xmlDoc": true
|
||||||
},
|
},
|
||||||
"packOptions": {
|
"packOptions": {
|
||||||
|
|
|
||||||
|
|
@ -31,6 +31,9 @@ namespace Microsoft.AspNetCore.Identity
|
||||||
/// <value>The <see cref="ClaimsPrincipal"/> associated with this login.</value>
|
/// <value>The <see cref="ClaimsPrincipal"/> associated with this login.</value>
|
||||||
public ClaimsPrincipal Principal { get; set; }
|
public ClaimsPrincipal Principal { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The <see cref="AuthenticationToken"/>s associated with this login.
|
||||||
|
/// </summary>
|
||||||
public IEnumerable<AuthenticationToken> AuthenticationTokens { get; set; }
|
public IEnumerable<AuthenticationToken> AuthenticationTokens { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -30,6 +30,7 @@ namespace Microsoft.AspNetCore.Identity
|
||||||
/// <param name="loginProvider">The authentication provider for the token.</param>
|
/// <param name="loginProvider">The authentication provider for the token.</param>
|
||||||
/// <param name="name">The name of the token.</param>
|
/// <param name="name">The name of the token.</param>
|
||||||
/// <param name="cancellationToken">The <see cref="CancellationToken"/> used to propagate notifications that the operation should be canceled.</param>
|
/// <param name="cancellationToken">The <see cref="CancellationToken"/> used to propagate notifications that the operation should be canceled.</param>
|
||||||
|
/// <returns>The <see cref="Task"/> that represents the asynchronous operation.</returns>
|
||||||
Task RemoveTokenAsync(TUser user, string loginProvider, string name, CancellationToken cancellationToken);
|
Task RemoveTokenAsync(TUser user, string loginProvider, string name, CancellationToken cancellationToken);
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,9 @@ namespace Microsoft.AspNetCore.Identity
|
||||||
private static readonly string DefaultTwoFactorRememberMeScheme = CookiePrefix + ".TwoFactorRememberMe";
|
private static readonly string DefaultTwoFactorRememberMeScheme = CookiePrefix + ".TwoFactorRememberMe";
|
||||||
private static readonly string DefaultTwoFactorUserIdScheme = CookiePrefix + ".TwoFactorUserId";
|
private static readonly string DefaultTwoFactorUserIdScheme = CookiePrefix + ".TwoFactorUserId";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Constructs a new instance of <see cref="IdentityCookieOptions"/>.
|
||||||
|
/// </summary>
|
||||||
public IdentityCookieOptions()
|
public IdentityCookieOptions()
|
||||||
{
|
{
|
||||||
// Configure all of the cookie middlewares
|
// Configure all of the cookie middlewares
|
||||||
|
|
@ -58,9 +61,24 @@ namespace Microsoft.AspNetCore.Identity
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The options for the application cookie.
|
||||||
|
/// </summary>
|
||||||
public CookieAuthenticationOptions ApplicationCookie { get; set; }
|
public CookieAuthenticationOptions ApplicationCookie { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The options for the external cookie.
|
||||||
|
/// </summary>
|
||||||
public CookieAuthenticationOptions ExternalCookie { get; set; }
|
public CookieAuthenticationOptions ExternalCookie { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The options for the two factor remember me cookie.
|
||||||
|
/// </summary>
|
||||||
public CookieAuthenticationOptions TwoFactorRememberMeCookie { get; set; }
|
public CookieAuthenticationOptions TwoFactorRememberMeCookie { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The options for the two factor user id cookie.
|
||||||
|
/// </summary>
|
||||||
public CookieAuthenticationOptions TwoFactorUserIdCookie { get; set; }
|
public CookieAuthenticationOptions TwoFactorUserIdCookie { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
||||||
|
|
@ -455,7 +455,10 @@ namespace Microsoft.AspNetCore.Identity
|
||||||
}
|
}
|
||||||
return cast;
|
return cast;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Throws if this class has been disposed.
|
||||||
|
/// </summary>
|
||||||
protected void ThrowIfDisposed()
|
protected void ThrowIfDisposed()
|
||||||
{
|
{
|
||||||
if (_disposed)
|
if (_disposed)
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,11 @@ namespace Microsoft.AspNetCore.Identity
|
||||||
private readonly SignInManager<TUser> _signInManager;
|
private readonly SignInManager<TUser> _signInManager;
|
||||||
private readonly IdentityOptions _options;
|
private readonly IdentityOptions _options;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Creates a new instance of <see cref="SecurityStampValidator{TUser}"/>.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="options">Used to access the <see cref="IdentityOptions"/>.</param>
|
||||||
|
/// <param name="signInManager">The <see cref="SignInManager{TUser}"/>.</param>
|
||||||
public SecurityStampValidator(IOptions<IdentityOptions> options, SignInManager<TUser> signInManager)
|
public SecurityStampValidator(IOptions<IdentityOptions> options, SignInManager<TUser> signInManager)
|
||||||
{
|
{
|
||||||
if (options == null)
|
if (options == null)
|
||||||
|
|
|
||||||
|
|
@ -69,7 +69,12 @@ namespace Microsoft.AspNetCore.Identity
|
||||||
/// The <see cref="ILogger"/> used to log messages from the manager.
|
/// The <see cref="ILogger"/> used to log messages from the manager.
|
||||||
/// </value>
|
/// </value>
|
||||||
protected internal virtual ILogger Logger { get; set; }
|
protected internal virtual ILogger Logger { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The <see cref="UserManager{TUser}"/> used.
|
||||||
|
/// </summary>
|
||||||
protected internal UserManager<TUser> UserManager { get; set; }
|
protected internal UserManager<TUser> UserManager { get; set; }
|
||||||
|
|
||||||
internal IUserClaimsPrincipalFactory<TUser> ClaimsFactory { get; set; }
|
internal IUserClaimsPrincipalFactory<TUser> ClaimsFactory { get; set; }
|
||||||
internal IdentityOptions Options { get; set; }
|
internal IdentityOptions Options { get; set; }
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6,10 +6,24 @@ using System.Collections.Generic;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Identity
|
namespace Microsoft.AspNetCore.Identity
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Options for user tokens.
|
||||||
|
/// </summary>
|
||||||
public class TokenOptions
|
public class TokenOptions
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Default token provider name used by email confirmation, password reset, and change email.
|
||||||
|
/// </summary>
|
||||||
public static readonly string DefaultProvider = "Default";
|
public static readonly string DefaultProvider = "Default";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Default token provider name used by the <see cref="EmailTokenProvider{TUser}"/>.
|
||||||
|
/// </summary>
|
||||||
public static readonly string DefaultEmailProvider = "Email";
|
public static readonly string DefaultEmailProvider = "Email";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Default token provider name used by the <see cref="PhoneNumberTokenProvider{TUser}"/>.
|
||||||
|
/// </summary>
|
||||||
public static readonly string DefaultPhoneProvider = "Phone";
|
public static readonly string DefaultPhoneProvider = "Phone";
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
||||||
|
|
@ -5,13 +5,23 @@ using System;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Identity
|
namespace Microsoft.AspNetCore.Identity
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Used to represents a token provider in <see cref="TokenOptions"/>'s TokenMap.
|
||||||
|
/// </summary>
|
||||||
public class TokenProviderDescriptor
|
public class TokenProviderDescriptor
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Initializes a new instance of the <see cref="TokenProviderDescriptor"/> class.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="type">The concrete type for this token provider.</param>
|
||||||
public TokenProviderDescriptor(Type type)
|
public TokenProviderDescriptor(Type type)
|
||||||
{
|
{
|
||||||
ProviderType = type;
|
ProviderType = type;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The type that will be used for this token provider.
|
||||||
|
/// </summary>
|
||||||
public Type ProviderType { get; }
|
public Type ProviderType { get; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -23,7 +23,14 @@ namespace Microsoft.AspNetCore.Identity
|
||||||
/// <typeparam name="TUser">The type encapsulating a user.</typeparam>
|
/// <typeparam name="TUser">The type encapsulating a user.</typeparam>
|
||||||
public class UserManager<TUser> : IDisposable where TUser : class
|
public class UserManager<TUser> : IDisposable where TUser : class
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The data protection purpose used for the reset password related methods.
|
||||||
|
/// </summary>
|
||||||
protected const string ResetPasswordTokenPurpose = "ResetPassword";
|
protected const string ResetPasswordTokenPurpose = "ResetPassword";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The data protection purpose used for the email confirmation related methods.
|
||||||
|
/// </summary>
|
||||||
protected const string ConfirmEmailTokenPurpose = "EmailConfirmation";
|
protected const string ConfirmEmailTokenPurpose = "EmailConfirmation";
|
||||||
|
|
||||||
private readonly Dictionary<string, IUserTwoFactorTokenProvider<TUser>> _tokenProviders =
|
private readonly Dictionary<string, IUserTwoFactorTokenProvider<TUser>> _tokenProviders =
|
||||||
|
|
@ -344,6 +351,13 @@ namespace Microsoft.AspNetCore.Identity
|
||||||
return principal.FindFirstValue(Options.ClaimsIdentity.UserIdClaimType);
|
return principal.FindFirstValue(Options.ClaimsIdentity.UserIdClaimType);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns the user corresponding to the IdentityOptions.ClaimsIdentity.UserIdClaimType claim in
|
||||||
|
/// the principal or null.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="principal">The principal which contains the user id claim.</param>
|
||||||
|
/// <returns>The user corresponding to the IdentityOptions.ClaimsIdentity.UserIdClaimType claim in
|
||||||
|
/// the principal or null</returns>
|
||||||
public virtual Task<TUser> GetUserAsync(ClaimsPrincipal principal)
|
public virtual Task<TUser> GetUserAsync(ClaimsPrincipal principal)
|
||||||
{
|
{
|
||||||
if (principal == null)
|
if (principal == null)
|
||||||
|
|
@ -2265,6 +2279,9 @@ namespace Microsoft.AspNetCore.Identity
|
||||||
return cast;
|
return cast;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Throws if this class has been disposed.
|
||||||
|
/// </summary>
|
||||||
protected void ThrowIfDisposed()
|
protected void ThrowIfDisposed()
|
||||||
{
|
{
|
||||||
if (_disposed)
|
if (_disposed)
|
||||||
|
|
|
||||||
|
|
@ -4,9 +4,6 @@
|
||||||
"buildOptions": {
|
"buildOptions": {
|
||||||
"warningsAsErrors": true,
|
"warningsAsErrors": true,
|
||||||
"keyFile": "../../tools/Key.snk",
|
"keyFile": "../../tools/Key.snk",
|
||||||
"nowarn": [
|
|
||||||
"CS1591"
|
|
||||||
],
|
|
||||||
"xmlDoc": true
|
"xmlDoc": true
|
||||||
},
|
},
|
||||||
"packOptions": {
|
"packOptions": {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue