1
0
mirror of https://github.com/bitwarden/server.git synced 2024-11-21 12:05:42 +01:00

[PM-1188] Server owner auth migration (#2825)

* [PM-1188] add sso project to auth

* [PM-1188] move sso api models to auth

* [PM-1188] fix sso api model namespace & imports

* [PM-1188] move core files to auth

* [PM-1188] fix core sso namespace & models

* [PM-1188] move sso repository files to auth

* [PM-1188] fix sso repo files namespace & imports

* [PM-1188] move sso sql files to auth folder

* [PM-1188] move sso test files to auth folders

* [PM-1188] fix sso tests namespace & imports

* [PM-1188] move auth api files to auth folder

* [PM-1188] fix auth api files namespace & imports

* [PM-1188] move auth core files to auth folder

* [PM-1188] fix auth core files namespace & imports

* [PM-1188] move auth email templates to auth folder

* [PM-1188] move auth email folder back into shared directory

* [PM-1188] fix auth email names

* [PM-1188] move auth core models to auth folder

* [PM-1188] fix auth model namespace & imports

* [PM-1188] add entire Identity project to auth codeowners

* [PM-1188] fix auth orm files namespace & imports

* [PM-1188] move auth orm files to auth folder

* [PM-1188] move auth sql files to auth folder

* [PM-1188] move auth tests to auth folder

* [PM-1188] fix auth test files namespace & imports

* [PM-1188] move emergency access api files to auth folder

* [PM-1188] fix emergencyaccess api files namespace & imports

* [PM-1188] move emergency access core files to auth folder

* [PM-1188] fix emergency access core files namespace & imports

* [PM-1188] move emergency access orm files to auth folder

* [PM-1188] fix emergency access orm files namespace & imports

* [PM-1188] move emergency access sql files to auth folder

* [PM-1188] move emergencyaccess test files to auth folder

* [PM-1188] fix emergency access test files namespace & imports

* [PM-1188] move captcha files to auth folder

* [PM-1188] fix captcha files namespace & imports

* [PM-1188] move auth admin files into auth folder

* [PM-1188] fix admin auth files namespace & imports
- configure mvc to look in auth folders for views

* [PM-1188] remove extra imports and formatting

* [PM-1188] fix ef auth model imports

* [PM-1188] fix DatabaseContextModelSnapshot paths

* [PM-1188] fix grant import in ef

* [PM-1188] update sqlproj

* [PM-1188] move missed sqlproj files

* [PM-1188] move auth ef models out of auth folder

* [PM-1188] fix auth ef models namespace

* [PM-1188] remove auth ef models unused imports

* [PM-1188] fix imports for auth ef models

* [PM-1188] fix more ef model imports

* [PM-1188] fix file encodings
This commit is contained in:
Jake Fink 2023-04-14 13:25:56 -04:00 committed by GitHub
parent 2529c5b36f
commit 88dd745070
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
332 changed files with 704 additions and 522 deletions

5
.github/CODEOWNERS vendored
View File

@ -2,5 +2,10 @@
#
# https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners
## Auth team files ##
**/Auth @bitwarden/team-auth-dev
bitwarden_license/src/Sso @bitwarden/team-auth-dev
src/Identity @bitwarden/team-auth-dev
**/SecretsManager @bitwarden/team-secrets-manager-dev
**/Vault @bitwarden/team-vault-dev

View File

@ -1,11 +1,14 @@
using System.Security.Claims;
using Bit.Core;
using Bit.Core.Auth.Entities;
using Bit.Core.Auth.Enums;
using Bit.Core.Auth.Models;
using Bit.Core.Auth.Models.Business.Tokenables;
using Bit.Core.Auth.Models.Data;
using Bit.Core.Auth.Repositories;
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Models;
using Bit.Core.Models.Api;
using Bit.Core.Models.Business.Tokenables;
using Bit.Core.Models.Data;
using Bit.Core.Repositories;
using Bit.Core.Services;
using Bit.Core.Settings;

View File

@ -1,4 +1,4 @@
using Bit.Core.Enums;
using Bit.Core.Auth.Enums;
using Bit.Sso.Utilities;
using Microsoft.AspNetCore.Authentication;
using Microsoft.AspNetCore.Mvc;

View File

@ -1,4 +1,4 @@
using Bit.Core.Enums;
using Bit.Core.Auth.Enums;
using Microsoft.AspNetCore.Authentication;
using Microsoft.AspNetCore.Authentication.OpenIdConnect;
using Sustainsys.Saml2.AspNetCore2;

View File

@ -1,8 +1,8 @@
using System.Security.Cryptography.X509Certificates;
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Models.Data;
using Bit.Core.Repositories;
using Bit.Core.Auth.Entities;
using Bit.Core.Auth.Enums;
using Bit.Core.Auth.Models.Data;
using Bit.Core.Auth.Repositories;
using Bit.Core.Settings;
using Bit.Core.Utilities;
using Bit.Sso.Models;

View File

@ -1,4 +1,4 @@
using Bit.Core.Enums;
using Bit.Core.Auth.Enums;
using Microsoft.AspNetCore.Authentication;
namespace Bit.Sso.Utilities;

View File

@ -1,4 +1,4 @@
using Bit.Core.Enums;
using Bit.Core.Auth.Enums;
using Microsoft.AspNetCore.Authentication;
using Microsoft.AspNetCore.Authentication.OpenIdConnect;
using Sustainsys.Saml2.AspNetCore2;

View File

@ -1,9 +1,9 @@
using Bit.Admin.IdentityServer;
using Bit.Admin.Models;
using Bit.Admin.Auth.IdentityServer;
using Bit.Admin.Auth.Models;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
namespace Bit.Admin.Controllers;
namespace Bit.Admin.Auth.Controllers;
public class LoginController : Controller
{

View File

@ -3,7 +3,7 @@ using Microsoft.AspNetCore.Authentication;
using Microsoft.AspNetCore.Identity;
using Microsoft.Extensions.Options;
namespace Bit.Admin.IdentityServer;
namespace Bit.Admin.Auth.IdentityServer;
public class PasswordlessSignInManager<TUser> : SignInManager<TUser> where TUser : class
{

View File

@ -3,7 +3,7 @@ using Bit.Core.Jobs;
using Bit.Core.Repositories;
using Quartz;
namespace Bit.Admin.Jobs;
namespace Bit.Admin.Auth.Jobs;
public class DatabaseExpiredGrantsJob : BaseJob
{

View File

@ -3,7 +3,7 @@ using Bit.Core.Jobs;
using Bit.Core.Repositories;
using Quartz;
namespace Bit.Admin.Jobs;
namespace Bit.Admin.Auth.Jobs;
public class DeleteAuthRequestsJob : BaseJob
{

View File

@ -1,6 +1,6 @@
using System.ComponentModel.DataAnnotations;
namespace Bit.Admin.Models;
namespace Bit.Admin.Auth.Models;
public class LoginModel
{

View File

@ -0,0 +1,5 @@
@using Microsoft.AspNetCore.Identity
@using Bit.Admin.Auth
@using Bit.Admin.Auth.Models
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@addTagHelper "*, Admin"

View File

@ -0,0 +1,3 @@
@{
Layout = "_Layout";
}

View File

@ -1,5 +1,6 @@
using Bit.Core.Entities;
using Bit.Core.Identity;
using Bit.Admin.Auth.IdentityServer;
using Bit.Core.Auth.Identity;
using Bit.Core.Entities;
using Bit.Core.Settings;
using Microsoft.AspNetCore.Identity;
using Microsoft.Extensions.DependencyInjection.Extensions;

View File

@ -1,4 +1,5 @@
using Bit.Core;
using Bit.Admin.Auth.Jobs;
using Bit.Core;
using Bit.Core.Jobs;
using Bit.Core.Repositories;
using Bit.Core.Services;

View File

@ -1,4 +1,5 @@
using System.Runtime.InteropServices;
using Bit.Admin.Auth.Jobs;
using Bit.Core.Jobs;
using Bit.Core.Settings;
using Quartz;

View File

@ -6,6 +6,7 @@ using Bit.Core.Utilities;
using Bit.SharedWeb.Utilities;
using Microsoft.AspNetCore.Identity;
using Stripe;
using Microsoft.AspNetCore.Mvc.Razor;
#if !OSS
using Bit.Commercial.Core.Utilities;
@ -95,6 +96,11 @@ public class Startup
});
services.Configure<RouteOptions>(options => options.LowercaseUrls = true);
services.Configure<RazorViewEngineOptions>(o =>
{
o.ViewLocationFormats.Add("/Auth/Views/{1}/{0}.cshtml");
});
// Jobs service
Jobs.JobsHostedService.AddJobsServices(services, globalSettings.SelfHosted);
services.AddHostedService<Jobs.JobsHostedService>();

View File

@ -1,7 +1,9 @@
using Bit.Api.Models.Request;
using Bit.Api.Auth.Models.Request;
using Bit.Api.Auth.Models.Response;
using Bit.Api.Models.Response;
using Bit.Core.Auth.Entities;
using Bit.Core.Auth.Exceptions;
using Bit.Core.Context;
using Bit.Core.Entities;
using Bit.Core.Exceptions;
using Bit.Core.Repositories;
using Bit.Core.Services;
@ -10,7 +12,7 @@ using Bit.Core.Utilities;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
namespace Bit.Api.Controllers;
namespace Bit.Api.Auth.Controllers;
[Route("auth-requests")]
[Authorize("Application")]

View File

@ -1,7 +1,9 @@
using Bit.Api.Models.Request;
using Bit.Api.Auth.Models.Request;
using Bit.Api.Auth.Models.Response;
using Bit.Api.Models.Request.Organizations;
using Bit.Api.Models.Response;
using Bit.Api.Vault.Models.Response;
using Bit.Core.Auth.Services;
using Bit.Core.Entities;
using Bit.Core.Exceptions;
using Bit.Core.Repositories;
@ -10,7 +12,7 @@ using Bit.Core.Settings;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
namespace Bit.Api.Controllers;
namespace Bit.Api.Auth.Controllers;
[Route("emergency-access")]
[Authorize("Application")]

View File

@ -1,12 +1,14 @@
using Bit.Api.Models.Request;
using Bit.Api.Models.Request.Accounts;
using Bit.Api.Auth.Models.Request;
using Bit.Api.Auth.Models.Request.Accounts;
using Bit.Api.Auth.Models.Response.TwoFactor;
using Bit.Api.Models.Request;
using Bit.Api.Models.Response;
using Bit.Api.Models.Response.TwoFactor;
using Bit.Core.Auth.Enums;
using Bit.Core.Auth.LoginFeatures.PasswordlessLogin.Interfaces;
using Bit.Core.Auth.Utilities;
using Bit.Core.Context;
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Exceptions;
using Bit.Core.LoginFeatures.PasswordlessLogin.Interfaces;
using Bit.Core.Repositories;
using Bit.Core.Services;
using Bit.Core.Settings;
@ -16,7 +18,7 @@ using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
namespace Bit.Api.Controllers;
namespace Bit.Api.Auth.Controllers;
[Route("two-factor")]
[Authorize("Web")]

View File

@ -1,8 +1,8 @@
using Bit.Core.Jobs;
using Bit.Core.Services;
using Bit.Core.Auth.Services;
using Bit.Core.Jobs;
using Quartz;
namespace Bit.Api.Jobs;
namespace Bit.Api.Auth.Jobs;
public class EmergencyAccessNotificationJob : BaseJob
{

View File

@ -1,8 +1,8 @@
using Bit.Core.Jobs;
using Bit.Core.Services;
using Bit.Core.Auth.Services;
using Bit.Core.Jobs;
using Quartz;
namespace Bit.Api.Jobs;
namespace Bit.Api.Auth.Jobs;
public class EmergencyAccessTimeoutJob : BaseJob
{

View File

@ -1,6 +1,6 @@
using System.ComponentModel.DataAnnotations;
namespace Bit.Api.Models.Public;
namespace Bit.Api.Auth.Models.Public;
public abstract class AssociationWithPermissionsBaseModel
{

View File

@ -1,6 +1,6 @@
using Bit.Core.Models.Data;
namespace Bit.Api.Models.Public.Request;
namespace Bit.Api.Auth.Models.Public.Request;
public class AssociationWithPermissionsRequestModel : AssociationWithPermissionsBaseModel
{

View File

@ -1,6 +1,6 @@
using Bit.Core.Models.Data;
namespace Bit.Api.Models.Public.Response;
namespace Bit.Api.Auth.Models.Public.Response;
public class AssociationWithPermissionsResponseModel : AssociationWithPermissionsBaseModel
{

View File

@ -1,6 +1,6 @@
using System.ComponentModel.DataAnnotations;
namespace Bit.Api.Models.Request.Accounts;
namespace Bit.Api.Auth.Models.Request.Accounts;
public class DeleteRecoverRequestModel
{

View File

@ -1,7 +1,7 @@
using System.ComponentModel.DataAnnotations;
using Bit.Core.Utilities;
namespace Bit.Api.Models.Request.Accounts;
namespace Bit.Api.Auth.Models.Request.Accounts;
public class EmailRequestModel : SecretVerificationRequestModel
{

View File

@ -1,7 +1,7 @@
using System.ComponentModel.DataAnnotations;
using Bit.Core.Utilities;
namespace Bit.Api.Models.Request.Accounts;
namespace Bit.Api.Auth.Models.Request.Accounts;
public class EmailTokenRequestModel : SecretVerificationRequestModel
{

View File

@ -2,7 +2,7 @@
using Bit.Core.Enums;
using Bit.Core.Utilities;
namespace Bit.Api.Models.Request.Accounts;
namespace Bit.Api.Auth.Models.Request.Accounts;
public class KdfRequestModel : PasswordRequestModel, IValidatableObject
{

View File

@ -1,6 +1,6 @@
using System.ComponentModel.DataAnnotations;
namespace Bit.Api.Models.Request.Accounts;
namespace Bit.Api.Auth.Models.Request.Accounts;
public class PasswordHintRequestModel
{

View File

@ -1,6 +1,6 @@
using System.ComponentModel.DataAnnotations;
namespace Bit.Api.Models.Request.Accounts;
namespace Bit.Api.Auth.Models.Request.Accounts;
public class PasswordRequestModel : SecretVerificationRequestModel
{

View File

@ -1,6 +1,6 @@
using System.ComponentModel.DataAnnotations;
namespace Bit.Api.Models.Request.Accounts;
namespace Bit.Api.Auth.Models.Request.Accounts;
public class RegenerateTwoFactorRequestModel
{

View File

@ -1,6 +1,6 @@
using System.ComponentModel.DataAnnotations;
namespace Bit.Api.Models.Request.Accounts;
namespace Bit.Api.Auth.Models.Request.Accounts;
public class SecretVerificationRequestModel : IValidatableObject
{

View File

@ -1,10 +1,10 @@
using System.ComponentModel.DataAnnotations;
using Bit.Core.Auth.Models.Api.Request.Accounts;
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Models.Api.Request.Accounts;
using Bit.Core.Utilities;
namespace Bit.Api.Models.Request.Accounts;
namespace Bit.Api.Auth.Models.Request.Accounts;
public class SetKeyConnectorKeyRequestModel : IValidatableObject
{

View File

@ -1,10 +1,10 @@
using System.ComponentModel.DataAnnotations;
using Bit.Core.Auth.Models.Api.Request.Accounts;
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Models.Api.Request.Accounts;
using Bit.Core.Utilities;
namespace Bit.Api.Models.Request.Accounts;
namespace Bit.Api.Auth.Models.Request.Accounts;
public class SetPasswordRequestModel : IValidatableObject
{

View File

@ -1,7 +1,8 @@
using System.ComponentModel.DataAnnotations;
using Bit.Api.Models.Request;
using Bit.Api.Vault.Models.Request;
namespace Bit.Api.Models.Request.Accounts;
namespace Bit.Api.Auth.Models.Request.Accounts;
public class UpdateKeyRequestModel
{

View File

@ -1,7 +1,7 @@
using System.ComponentModel.DataAnnotations;
using Bit.Core.Entities;
namespace Bit.Api.Models.Request.Accounts;
namespace Bit.Api.Auth.Models.Request.Accounts;
public class UpdateProfileRequestModel
{

View File

@ -1,7 +1,7 @@
using System.ComponentModel.DataAnnotations;
using Bit.Api.Models.Request.Organizations;
namespace Bit.Api.Models.Request.Accounts;
namespace Bit.Api.Auth.Models.Request.Accounts;
public class UpdateTempPasswordRequestModel : OrganizationUserResetPasswordRequestModel
{

View File

@ -1,6 +1,6 @@
using System.ComponentModel.DataAnnotations;
namespace Bit.Api.Models.Request.Accounts;
namespace Bit.Api.Auth.Models.Request.Accounts;
public class VerifyDeleteRecoverRequestModel
{

View File

@ -1,6 +1,6 @@
using System.ComponentModel.DataAnnotations;
namespace Bit.Api.Models.Request.Accounts;
namespace Bit.Api.Auth.Models.Request.Accounts;
public class VerifyEmailRequestModel
{

View File

@ -1,6 +1,6 @@
using System.ComponentModel.DataAnnotations;
namespace Bit.Api.Models.Request.Accounts;
namespace Bit.Api.Auth.Models.Request.Accounts;
public class VerifyOTPRequestModel
{

View File

@ -1,8 +1,8 @@
using System.ComponentModel.DataAnnotations;
using Bit.Core.Enums;
using Bit.Core.Auth.Enums;
using Newtonsoft.Json;
namespace Bit.Api.Models.Request;
namespace Bit.Api.Auth.Models.Request;
public class AuthRequestCreateRequestModel
{

View File

@ -1,9 +1,9 @@
using System.ComponentModel.DataAnnotations;
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Auth.Entities;
using Bit.Core.Auth.Enums;
using Bit.Core.Utilities;
namespace Bit.Api.Models.Request;
namespace Bit.Api.Auth.Models.Request;
public class EmergencyAccessInviteRequestModel
{

View File

@ -2,15 +2,15 @@
using System.Security.Cryptography;
using System.Security.Cryptography.X509Certificates;
using System.Text.RegularExpressions;
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Models.Data;
using Bit.Core.Auth.Entities;
using Bit.Core.Auth.Enums;
using Bit.Core.Auth.Models.Data;
using Bit.Core.Services;
using Bit.Core.Sso;
using Bit.Core.Utilities;
using Microsoft.AspNetCore.Authentication.OpenIdConnect;
namespace Bit.Api.Models.Request.Organizations;
namespace Bit.Api.Auth.Models.Request.Organizations;
public class OrganizationSsoRequestModel
{

View File

@ -1,12 +1,12 @@
using System.ComponentModel.DataAnnotations;
using Bit.Api.Models.Request.Accounts;
using Bit.Api.Auth.Models.Request.Accounts;
using Bit.Core.Auth.Enums;
using Bit.Core.Auth.Models;
using Bit.Core.Auth.Utilities;
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Models;
using Bit.Core.Utilities;
using Fido2NetLib;
namespace Bit.Api.Models.Request;
namespace Bit.Api.Auth.Models.Request;
public class UpdateTwoFactorAuthenticatorRequestModel : SecretVerificationRequestModel
{

View File

@ -1,9 +1,9 @@
using System.ComponentModel.DataAnnotations;
using System.Reflection;
using Bit.Core.Entities;
using Bit.Core.Auth.Entities;
using Bit.Core.Models.Api;
namespace Bit.Api.Models.Response;
namespace Bit.Api.Auth.Models.Response;
public class AuthRequestResponseModel : ResponseModel
{

View File

@ -1,12 +1,14 @@
using Bit.Api.Vault.Models.Response;
using Bit.Core.Auth.Entities;
using Bit.Core.Auth.Enums;
using Bit.Core.Auth.Models.Data;
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Models.Api;
using Bit.Core.Models.Data;
using Bit.Core.Settings;
using Bit.Core.Vault.Models.Data;
namespace Bit.Api.Models.Response;
namespace Bit.Api.Auth.Models.Response;
public class EmergencyAccessResponseModel : ResponseModel
{

View File

@ -1,9 +1,10 @@
using Bit.Core.Entities;
using Bit.Core.Auth.Entities;
using Bit.Core.Auth.Models.Data;
using Bit.Core.Entities;
using Bit.Core.Models.Api;
using Bit.Core.Models.Data;
using Bit.Core.Settings;
namespace Bit.Api.Models.Response.Organizations;
namespace Bit.Api.Auth.Models.Response.Organizations;
public class OrganizationSsoResponseModel : ResponseModel
{

View File

@ -1,9 +1,9 @@
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Auth.Enums;
using Bit.Core.Entities;
using Bit.Core.Models.Api;
using OtpNet;
namespace Bit.Api.Models.Response.TwoFactor;
namespace Bit.Api.Auth.Models.Response.TwoFactor;
public class TwoFactorAuthenticatorResponseModel : ResponseModel
{

View File

@ -1,9 +1,9 @@
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Models;
using Bit.Core.Auth.Enums;
using Bit.Core.Auth.Models;
using Bit.Core.Entities;
using Bit.Core.Models.Api;
namespace Bit.Api.Models.Response.TwoFactor;
namespace Bit.Api.Auth.Models.Response.TwoFactor;
public class TwoFactorDuoResponseModel : ResponseModel
{

View File

@ -1,8 +1,8 @@
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Auth.Enums;
using Bit.Core.Entities;
using Bit.Core.Models.Api;
namespace Bit.Api.Models.Response.TwoFactor;
namespace Bit.Api.Auth.Models.Response.TwoFactor;
public class TwoFactorEmailResponseModel : ResponseModel
{

View File

@ -1,9 +1,9 @@
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Models;
using Bit.Core.Auth.Enums;
using Bit.Core.Auth.Models;
using Bit.Core.Entities;
using Bit.Core.Models.Api;
namespace Bit.Api.Models.Response.TwoFactor;
namespace Bit.Api.Auth.Models.Response.TwoFactor;
public class TwoFactorProviderResponseModel : ResponseModel
{

View File

@ -1,7 +1,7 @@
using Bit.Core.Entities;
using Bit.Core.Models.Api;
namespace Bit.Api.Models.Response.TwoFactor;
namespace Bit.Api.Auth.Models.Response.TwoFactor;
public class TwoFactorRecoverResponseModel : ResponseModel
{

View File

@ -1,9 +1,9 @@
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Models;
using Bit.Core.Auth.Enums;
using Bit.Core.Auth.Models;
using Bit.Core.Entities;
using Bit.Core.Models.Api;
namespace Bit.Api.Models.Response.TwoFactor;
namespace Bit.Api.Auth.Models.Response.TwoFactor;
public class TwoFactorWebAuthnResponseModel : ResponseModel
{

View File

@ -1,8 +1,8 @@
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Auth.Enums;
using Bit.Core.Entities;
using Bit.Core.Models.Api;
namespace Bit.Api.Models.Response.TwoFactor;
namespace Bit.Api.Auth.Models.Response.TwoFactor;
public class TwoFactorYubiKeyResponseModel : ResponseModel
{

View File

@ -1,14 +1,17 @@
using Bit.Api.Models.Request;
using Bit.Api.Auth.Models.Request.Accounts;
using Bit.Api.Models.Request;
using Bit.Api.Models.Request.Accounts;
using Bit.Api.Models.Response;
using Bit.Api.Utilities;
using Bit.Core;
using Bit.Core.Auth.Models.Api.Request.Accounts;
using Bit.Core.Auth.Models.Api.Response.Accounts;
using Bit.Core.Auth.Services;
using Bit.Core.Auth.Utilities;
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Enums.Provider;
using Bit.Core.Exceptions;
using Bit.Core.Models.Api.Request.Accounts;
using Bit.Core.Models.Api.Response.Accounts;
using Bit.Core.Models.Business;
using Bit.Core.Models.Data;
using Bit.Core.Repositories;

View File

@ -1,10 +1,15 @@
using System.Text.Json;
using Bit.Api.Auth.Models.Request.Accounts;
using Bit.Api.Auth.Models.Request.Organizations;
using Bit.Api.Auth.Models.Response.Organizations;
using Bit.Api.Models.Request;
using Bit.Api.Models.Request.Accounts;
using Bit.Api.Models.Request.Organizations;
using Bit.Api.Models.Response;
using Bit.Api.Models.Response.Organizations;
using Bit.Api.SecretsManager;
using Bit.Core.Auth.Repositories;
using Bit.Core.Auth.Services;
using Bit.Core.Context;
using Bit.Core.Enums;
using Bit.Core.Exceptions;

View File

@ -1,4 +1,5 @@
using Bit.Core.Jobs;
using Bit.Api.Auth.Jobs;
using Bit.Core.Jobs;
using Bit.Core.Settings;
using Quartz;

View File

@ -1,4 +1,5 @@
using Bit.Core.Entities;
using Bit.Api.Auth.Models.Public.Request;
using Bit.Core.Entities;
namespace Bit.Api.Models.Public.Request;

View File

@ -1,4 +1,5 @@
using Bit.Core.Entities;
using Bit.Api.Auth.Models.Public.Request;
using Bit.Core.Entities;
namespace Bit.Api.Models.Public.Request;

View File

@ -1,4 +1,5 @@
using Bit.Core.Entities;
using Bit.Api.Auth.Models.Public.Request;
using Bit.Core.Entities;
namespace Bit.Api.Models.Public.Request;

View File

@ -1,4 +1,5 @@
using System.ComponentModel.DataAnnotations;
using Bit.Api.Auth.Models.Public.Response;
using Bit.Core.Entities;
using Bit.Core.Models.Data;

View File

@ -1,4 +1,5 @@
using System.ComponentModel.DataAnnotations;
using Bit.Api.Auth.Models.Public.Response;
using Bit.Core.Entities;
using Bit.Core.Models.Data;

View File

@ -1,4 +1,5 @@
using System.ComponentModel.DataAnnotations;
using Bit.Api.Auth.Models.Public.Response;
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Models.Data;

View File

@ -1,4 +1,5 @@
using Bit.Core.Enums;
using Bit.Api.Auth.Models.Request.Accounts;
using Bit.Core.Enums;
namespace Bit.Api.Models.Request.Accounts;

View File

@ -1,6 +1,6 @@
using System.ComponentModel.DataAnnotations;
using System.Text.Json;
using Bit.Api.Models.Request.Accounts;
using Bit.Api.Auth.Models.Request.Accounts;
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Models.Data;

View File

@ -1,4 +1,5 @@
using Bit.Core.Enums;
using Bit.Core.Auth.Models.Data;
using Bit.Core.Enums;
using Bit.Core.Enums.Provider;
using Bit.Core.Models.Api;
using Bit.Core.Models.Data;

View File

@ -1,7 +1,6 @@
using Bit.Api.Utilities;
using Bit.Core;
using Bit.Core.Context;
using Bit.Core.Identity;
using Bit.Core.Settings;
using AspNetCoreRateLimit;
using Stripe;
@ -13,6 +12,7 @@ using Microsoft.IdentityModel.Logging;
using Microsoft.OpenApi.Models;
using Bit.SharedWeb.Utilities;
using Microsoft.Extensions.DependencyInjection.Extensions;
using Bit.Core.Auth.Identity;
#if !OSS
using Bit.Commercial.Core.SecretsManager;

View File

@ -1,5 +1,6 @@
using System.Text.Json;
using Azure.Messaging.EventGrid;
using Bit.Api.Auth.Models.Request.Accounts;
using Bit.Api.Models.Request.Accounts;
using Bit.Api.Models.Request.Organizations;
using Bit.Api.Models.Response;

View File

@ -1,7 +1,9 @@
using System.ComponentModel.DataAnnotations;
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Utilities;
namespace Bit.Core.Entities;
namespace Bit.Core.Auth.Entities;
public class AuthRequest : ITableObject<Guid>
{
@ -10,7 +12,7 @@ public class AuthRequest : ITableObject<Guid>
public Enums.AuthRequestType Type { get; set; }
[MaxLength(50)]
public string RequestDeviceIdentifier { get; set; }
public Enums.DeviceType RequestDeviceType { get; set; }
public DeviceType RequestDeviceType { get; set; }
[MaxLength(50)]
public string RequestIpAddress { get; set; }
public Guid? ResponseDeviceId { get; set; }

View File

@ -1,8 +1,9 @@
using System.ComponentModel.DataAnnotations;
using Bit.Core.Enums;
using Bit.Core.Auth.Enums;
using Bit.Core.Entities;
using Bit.Core.Utilities;
namespace Bit.Core.Entities;
namespace Bit.Core.Auth.Entities;
public class EmergencyAccess : ITableObject<Guid>
{

View File

@ -1,6 +1,6 @@
using System.ComponentModel.DataAnnotations;
namespace Bit.Core.Entities;
namespace Bit.Core.Auth.Entities;
public class Grant
{

View File

@ -1,6 +1,7 @@
using Bit.Core.Models.Data;
using Bit.Core.Auth.Models.Data;
using Bit.Core.Entities;
namespace Bit.Core.Entities;
namespace Bit.Core.Auth.Entities;
public class SsoConfig : ITableObject<long>
{

View File

@ -1,6 +1,7 @@
using System.ComponentModel.DataAnnotations;
using Bit.Core.Entities;
namespace Bit.Core.Entities;
namespace Bit.Core.Auth.Entities;
public class SsoUser : ITableObject<long>
{

View File

@ -1,4 +1,4 @@
namespace Bit.Core.Enums;
namespace Bit.Core.Auth.Enums;
public enum AuthRequestType : byte
{

View File

@ -1,4 +1,4 @@
namespace Bit.Core.Enums;
namespace Bit.Core.Auth.Enums;
public enum EmergencyAccessStatusType : byte
{

View File

@ -1,4 +1,4 @@
namespace Bit.Core.Enums;
namespace Bit.Core.Auth.Enums;
public enum EmergencyAccessType : byte
{

View File

@ -1,4 +1,4 @@
namespace Bit.Core.Enums;
namespace Bit.Core.Auth.Enums;
public enum Saml2BindingType : byte
{

View File

@ -1,4 +1,4 @@
namespace Bit.Core.Enums;
namespace Bit.Core.Auth.Enums;
public enum Saml2NameIdFormat : byte
{

View File

@ -1,4 +1,4 @@
namespace Bit.Core.Enums;
namespace Bit.Core.Auth.Enums;
public enum Saml2SigningBehavior : byte
{

View File

@ -1,4 +1,4 @@
namespace Bit.Core.Enums;
namespace Bit.Core.Auth.Enums;
public enum SsoType : byte
{

View File

@ -1,4 +1,4 @@
namespace Bit.Core.Enums;
namespace Bit.Core.Auth.Enums;
public enum TwoFactorProviderType : byte
{

View File

@ -1,4 +1,4 @@
namespace Bit.Core.Exceptions;
namespace Bit.Core.Auth.Exceptions;
public class DuplicateAuthRequestException : Exception
{

View File

@ -1,11 +1,11 @@
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Auth.Enums;
using Bit.Core.Entities;
using Bit.Core.Services;
using Microsoft.AspNetCore.Identity;
using Microsoft.Extensions.DependencyInjection;
using OtpNet;
namespace Bit.Core.Identity;
namespace Bit.Core.Auth.Identity;
public class AuthenticatorTokenProvider : IUserTwoFactorTokenProvider<User>
{

View File

@ -1,13 +1,13 @@
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Models;
using Bit.Core.Auth.Enums;
using Bit.Core.Auth.Models;
using Bit.Core.Auth.Utilities.Duo;
using Bit.Core.Entities;
using Bit.Core.Services;
using Bit.Core.Settings;
using Bit.Core.Utilities.Duo;
using Microsoft.AspNetCore.Identity;
using Microsoft.Extensions.DependencyInjection;
namespace Bit.Core.Identity;
namespace Bit.Core.Auth.Identity;
public class DuoWebTokenProvider : IUserTwoFactorTokenProvider<User>
{

View File

@ -1,11 +1,11 @@
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Models;
using Bit.Core.Auth.Enums;
using Bit.Core.Auth.Models;
using Bit.Core.Entities;
using Bit.Core.Services;
using Microsoft.AspNetCore.Identity;
using Microsoft.Extensions.DependencyInjection;
namespace Bit.Core.Identity;
namespace Bit.Core.Auth.Identity;
public class EmailTokenProvider : IUserTwoFactorTokenProvider<User>
{

View File

@ -1,6 +1,6 @@
using Bit.Core.Entities;
namespace Bit.Core.Identity;
namespace Bit.Core.Auth.Identity;
public interface IOrganizationTwoFactorTokenProvider
{

View File

@ -1,6 +1,6 @@
using Microsoft.AspNetCore.Identity;
namespace Bit.Core.Identity;
namespace Bit.Core.Auth.Identity;
public class LowerInvariantLookupNormalizer : ILookupNormalizer
{

View File

@ -1,10 +1,10 @@
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Models;
using Bit.Core.Auth.Enums;
using Bit.Core.Auth.Models;
using Bit.Core.Auth.Utilities.Duo;
using Bit.Core.Entities;
using Bit.Core.Settings;
using Bit.Core.Utilities.Duo;
namespace Bit.Core.Identity;
namespace Bit.Core.Auth.Identity;
public interface IOrganizationDuoWebTokenProvider : IOrganizationTwoFactorTokenProvider { }

View File

@ -1,7 +1,7 @@
using Bit.Core.Entities;
using Microsoft.AspNetCore.Identity;
namespace Bit.Core.Identity;
namespace Bit.Core.Auth.Identity;
public class RoleStore : IRoleStore<Role>
{

View File

@ -4,7 +4,7 @@ using Microsoft.AspNetCore.Identity;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
namespace Bit.Core.Identity;
namespace Bit.Core.Auth.Identity;
public class TwoFactorRememberTokenProvider : DataProtectorTokenProvider<User>
{

View File

@ -5,7 +5,7 @@ using Bit.Core.Services;
using Microsoft.AspNetCore.Identity;
using Microsoft.Extensions.DependencyInjection;
namespace Bit.Core.Identity;
namespace Bit.Core.Auth.Identity;
public class UserStore :
IUserStore<User>,

View File

@ -1,7 +1,7 @@
using System.Text.Json;
using Bit.Core.Auth.Enums;
using Bit.Core.Auth.Models;
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Models;
using Bit.Core.Services;
using Bit.Core.Settings;
using Bit.Core.Utilities;
@ -10,7 +10,7 @@ using Fido2NetLib.Objects;
using Microsoft.AspNetCore.Identity;
using Microsoft.Extensions.DependencyInjection;
namespace Bit.Core.Identity;
namespace Bit.Core.Auth.Identity;
public class WebAuthnTokenProvider : IUserTwoFactorTokenProvider<User>
{

View File

@ -1,12 +1,12 @@
using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Auth.Enums;
using Bit.Core.Entities;
using Bit.Core.Services;
using Bit.Core.Settings;
using Microsoft.AspNetCore.Identity;
using Microsoft.Extensions.DependencyInjection;
using YubicoDotNetClient;
namespace Bit.Core.Identity;
namespace Bit.Core.Auth.Identity;
public class YubicoOtpTokenProvider : IUserTwoFactorTokenProvider<User>
{

View File

@ -1,6 +1,6 @@
using Microsoft.AspNetCore.Http;
namespace Bit.Core.IdentityServer;
namespace Bit.Core.Auth.IdentityServer;
public static class TokenRetrieval
{

View File

@ -1,8 +1,8 @@
using Bit.Core.LoginFeatures.PasswordlessLogin;
using Bit.Core.LoginFeatures.PasswordlessLogin.Interfaces;
using Bit.Core.Auth.LoginFeatures.PasswordlessLogin;
using Bit.Core.Auth.LoginFeatures.PasswordlessLogin.Interfaces;
using Microsoft.Extensions.DependencyInjection;
namespace Bit.Core.LoginFeatures;
namespace Bit.Core.Auth.LoginFeatures;
public static class LoginServiceCollectionExtensions
{

View File

@ -1,4 +1,4 @@
namespace Bit.Core.LoginFeatures.PasswordlessLogin.Interfaces;
namespace Bit.Core.Auth.LoginFeatures.PasswordlessLogin.Interfaces;
public interface IVerifyAuthRequestCommand
{

View File

@ -1,8 +1,8 @@
using Bit.Core.LoginFeatures.PasswordlessLogin.Interfaces;
using Bit.Core.Auth.LoginFeatures.PasswordlessLogin.Interfaces;
using Bit.Core.Repositories;
using Bit.Core.Utilities;
namespace Bit.Core.LoginFeatures.PasswordlessLogin;
namespace Bit.Core.Auth.LoginFeatures.PasswordlessLogin;
public class VerifyAuthRequestCommand : IVerifyAuthRequestCommand
{

Some files were not shown because too many files have changed in this diff Show More