├── .editorconfig ├── .github ├── dependabot.yml └── workflows │ ├── dotnet.yml │ └── publish-to-nuget.yml ├── .gitignore ├── AuthEndpoints.sln ├── Documentation └── .gitignore ├── LICENSE ├── README.md ├── SECURITY.md ├── src ├── AuthEndpoints.External │ ├── AuthEndpoints.External.csproj │ └── GithubApiEndpointRouteBuilderExtensions.cs └── AuthEndpoints │ ├── AuthEndpoints.csproj │ ├── Identity │ ├── AntiforgeryEnforcementMiddleware.cs │ ├── AntiforgeryExtensions.cs │ ├── AntiforgeryMetadata.cs │ ├── AuthEndpointsConstants.cs │ ├── ConfirmIdentityRequest.cs │ ├── IdentityApiEndpointRouteBuilderExtensions.cs │ ├── IdentityApiEndpoints.cs │ └── ServiceCollectionExtensions.cs │ └── Jwt │ ├── Contracts │ ├── SimpleJwtErrorResponse.cs │ ├── SimpleJwtLoginRequest.cs │ ├── SimpleJwtRefreshTokenRequest.cs │ └── SimpleJwtTokenResponse.cs │ ├── EntityTypeConfiguration.cs │ ├── JwtApiEndpointRouteBuilderExtensions.cs │ ├── JwtEndpoints.cs │ ├── Models │ └── DefaultRefreshToken.cs │ ├── Options │ ├── SimpleJwtOptions.cs │ ├── SimpleJwtOptionsValidator.cs │ └── SimpleJwtSigningOptions.cs │ ├── ServiceCollectionExtensions.cs │ ├── Services │ ├── Authenticators │ │ ├── AuthenticationError.cs │ │ ├── AuthenticationResult.cs │ │ ├── DefaultAuthenticator.cs │ │ └── IAuthenticator.cs │ ├── IRefreshTokenService.cs │ ├── RefreshTokenCookieWriter.cs │ ├── RefreshTokenService.cs │ └── TokenGenerators │ │ ├── AccessTokenGenerator.cs │ │ └── IAccessTokenGenerator.cs │ ├── SimpleJwtBuilder.cs │ └── TypeHelper.cs └── tests ├── Demo ├── .env.example ├── .gitignore ├── Data │ └── AppDbContext.cs ├── Demo.csproj ├── Demo.http ├── Demo.sln ├── Migrations │ ├── 20251003155213_Init.Designer.cs │ ├── 20251003155213_Init.cs │ └── AppDbContextModelSnapshot.cs ├── ModelCustomizer.cs ├── Models │ ├── AppRole.cs │ ├── AppUser.cs │ └── Blog.cs ├── Program.cs ├── Properties │ └── launchSettings.json ├── README.md ├── appsettings.Development.json └── appsettings.json └── README.md /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/.editorconfig -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/workflows/dotnet.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/.github/workflows/dotnet.yml -------------------------------------------------------------------------------- /.github/workflows/publish-to-nuget.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/.github/workflows/publish-to-nuget.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/.gitignore -------------------------------------------------------------------------------- /AuthEndpoints.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/AuthEndpoints.sln -------------------------------------------------------------------------------- /Documentation/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/Documentation/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/README.md -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/SECURITY.md -------------------------------------------------------------------------------- /src/AuthEndpoints.External/AuthEndpoints.External.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints.External/AuthEndpoints.External.csproj -------------------------------------------------------------------------------- /src/AuthEndpoints.External/GithubApiEndpointRouteBuilderExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints.External/GithubApiEndpointRouteBuilderExtensions.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/AuthEndpoints.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/AuthEndpoints.csproj -------------------------------------------------------------------------------- /src/AuthEndpoints/Identity/AntiforgeryEnforcementMiddleware.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Identity/AntiforgeryEnforcementMiddleware.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Identity/AntiforgeryExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Identity/AntiforgeryExtensions.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Identity/AntiforgeryMetadata.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Identity/AntiforgeryMetadata.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Identity/AuthEndpointsConstants.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Identity/AuthEndpointsConstants.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Identity/ConfirmIdentityRequest.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Identity/ConfirmIdentityRequest.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Identity/IdentityApiEndpointRouteBuilderExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Identity/IdentityApiEndpointRouteBuilderExtensions.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Identity/IdentityApiEndpoints.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Identity/IdentityApiEndpoints.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Identity/ServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Identity/ServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Contracts/SimpleJwtErrorResponse.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Contracts/SimpleJwtErrorResponse.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Contracts/SimpleJwtLoginRequest.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Contracts/SimpleJwtLoginRequest.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Contracts/SimpleJwtRefreshTokenRequest.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Contracts/SimpleJwtRefreshTokenRequest.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Contracts/SimpleJwtTokenResponse.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Contracts/SimpleJwtTokenResponse.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/EntityTypeConfiguration.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/EntityTypeConfiguration.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/JwtApiEndpointRouteBuilderExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/JwtApiEndpointRouteBuilderExtensions.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/JwtEndpoints.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/JwtEndpoints.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Models/DefaultRefreshToken.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Models/DefaultRefreshToken.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Options/SimpleJwtOptions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Options/SimpleJwtOptions.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Options/SimpleJwtOptionsValidator.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Options/SimpleJwtOptionsValidator.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Options/SimpleJwtSigningOptions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Options/SimpleJwtSigningOptions.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/ServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/ServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Services/Authenticators/AuthenticationError.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Services/Authenticators/AuthenticationError.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Services/Authenticators/AuthenticationResult.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Services/Authenticators/AuthenticationResult.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Services/Authenticators/DefaultAuthenticator.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Services/Authenticators/DefaultAuthenticator.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Services/Authenticators/IAuthenticator.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Services/Authenticators/IAuthenticator.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Services/IRefreshTokenService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Services/IRefreshTokenService.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Services/RefreshTokenCookieWriter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Services/RefreshTokenCookieWriter.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Services/RefreshTokenService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Services/RefreshTokenService.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Services/TokenGenerators/AccessTokenGenerator.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Services/TokenGenerators/AccessTokenGenerator.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/Services/TokenGenerators/IAccessTokenGenerator.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/Services/TokenGenerators/IAccessTokenGenerator.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/SimpleJwtBuilder.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/SimpleJwtBuilder.cs -------------------------------------------------------------------------------- /src/AuthEndpoints/Jwt/TypeHelper.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/src/AuthEndpoints/Jwt/TypeHelper.cs -------------------------------------------------------------------------------- /tests/Demo/.env.example: -------------------------------------------------------------------------------- 1 | FRONTEND_ORIGIN='' # e.g. 'http://localhost:3000' 2 | DB_CONNECTION_STRING='Data Source=sqlite.db' 3 | -------------------------------------------------------------------------------- /tests/Demo/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/tests/Demo/.gitignore -------------------------------------------------------------------------------- /tests/Demo/Data/AppDbContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/tests/Demo/Data/AppDbContext.cs -------------------------------------------------------------------------------- /tests/Demo/Demo.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/tests/Demo/Demo.csproj -------------------------------------------------------------------------------- /tests/Demo/Demo.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/tests/Demo/Demo.http -------------------------------------------------------------------------------- /tests/Demo/Demo.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/tests/Demo/Demo.sln -------------------------------------------------------------------------------- /tests/Demo/Migrations/20251003155213_Init.Designer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/tests/Demo/Migrations/20251003155213_Init.Designer.cs -------------------------------------------------------------------------------- /tests/Demo/Migrations/20251003155213_Init.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/tests/Demo/Migrations/20251003155213_Init.cs -------------------------------------------------------------------------------- /tests/Demo/Migrations/AppDbContextModelSnapshot.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/tests/Demo/Migrations/AppDbContextModelSnapshot.cs -------------------------------------------------------------------------------- /tests/Demo/ModelCustomizer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/tests/Demo/ModelCustomizer.cs -------------------------------------------------------------------------------- /tests/Demo/Models/AppRole.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/tests/Demo/Models/AppRole.cs -------------------------------------------------------------------------------- /tests/Demo/Models/AppUser.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/tests/Demo/Models/AppUser.cs -------------------------------------------------------------------------------- /tests/Demo/Models/Blog.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/tests/Demo/Models/Blog.cs -------------------------------------------------------------------------------- /tests/Demo/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/tests/Demo/Program.cs -------------------------------------------------------------------------------- /tests/Demo/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/tests/Demo/Properties/launchSettings.json -------------------------------------------------------------------------------- /tests/Demo/README.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/Demo/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/tests/Demo/appsettings.Development.json -------------------------------------------------------------------------------- /tests/Demo/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/madeyoga/AuthEndpoints/HEAD/tests/Demo/appsettings.json -------------------------------------------------------------------------------- /tests/README.md: -------------------------------------------------------------------------------- 1 | --------------------------------------------------------------------------------