Levge.Identity
1.0.0
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package Levge.Identity --version 1.0.0
NuGet\Install-Package Levge.Identity -Version 1.0.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Levge.Identity" Version="1.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Levge.Identity" Version="1.0.0" />
<PackageReference Include="Levge.Identity" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Levge.Identity --version 1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Levge.Identity, 1.0.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Levge.Identity@1.0.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Levge.Identity&version=1.0.0
#tool nuget:?package=Levge.Identity&version=1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Levge.Identity
🔐 Levge.Identity, JWT tabanlı authentication işlemlerini konfigürasyonla hızlıca entegre etmenizi sağlar. Ayrıca ICurrentUser
, token servisleri, parola hash işlemleri ve özel kod üretimi gibi birçok kimlik yönetimi işlevini içerir.
🚀 Kurulum
dotnet add package Levge.Identity
⚙️ Konfigürasyon
appsettings.json
içerisine aşağıdaki bölümü ekleyin:
"IdentityConfig": {
"Jwt": {
"Issuer": "levge.auth",
"Audience": "levge.api",
"Secret": "super-secret-key-256-bit",
"AccessTokenExpirationMinutes": 60,
"RefreshTokenExpirationMinutes": 43200,
"ValidateIssuer": true,
"ValidateAudience": true,
"ValidateSigningKey": true,
"ValidateLifetime": true,
"AuthScheme": "Bearer",
"DefaultScheme": "Bearer"
}
}
🧱 Program.cs
builder.Services.AddIdentity<JwtIdentityProvider, long>(builder.Configuration);
👤 ICurrentUser
Kullanımı
public class SampleService
{
private readonly ICurrentUser<long> _currentUser;
public SampleService(ICurrentUser<long> currentUser)
{
_currentUser = currentUser;
}
public void WhoAmI()
{
if (_currentUser.IsAuthenticated)
{
var userId = _currentUser.UserId;
var email = _currentUser.Email;
var custom = _currentUser.GetCustomValue("department");
}
}
}
🔑 Token Servisi (ITokenService
)
var accessToken = _tokenService.GenerateAccessToken(userId, claims);
var refreshToken = _tokenService.GenerateRefreshToken();
🔐 Parola Hash Servisi (IPasswordHasher
)
var hashed = _passwordHasher.Hash("123456");
var isValid = _passwordHasher.Verify("123456", hashed);
🔢 Kod Üretimi (ICodeGenerator
)
var code = _codeGenerator.GenerateNumericCode(6); // örn: 392871
var scoped = _codeGenerator.GenerateScopedCode("PasswordReset", "User:42");
🧩 Provider Bazlı Yapı
Levge.Identity
provider odaklıdır. Örn:
JwtIdentityProvider
GoogleIdentityProvider
(yakında)SsoIdentityProvider
(gelecek plan)
📦 Bağımlılıklar
Microsoft.AspNetCore.Authentication.JwtBearer
Microsoft.Extensions.Options
- Harici bağımlılık YOK ❌
📄 Lisans
MIT © Serdar ÖZKAN
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net8.0
- Levge.Exceptions (>= 1.0.0)
- Microsoft.AspNetCore.Authentication.JwtBearer (>= 8.0.17)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Levge.Identity:
Package | Downloads |
---|---|
Levge.AuditLog
Domain entity, interface, and enumeration base types for Levge projects. |
GitHub repositories
This package is not used by any popular GitHub repositories.