feat(ClaimExtensions): Ermöglicht die Bereitstellung von Methoden zum Abrufen spezifischer Ansprüche.

This commit is contained in:
Developer 02
2025-01-21 16:38:09 +01:00
parent a1f996b328
commit 47aeb49a40
4 changed files with 21 additions and 9 deletions

View File

@@ -6,13 +6,10 @@ using DigitalData.Core.Application;
using DigitalData.Core.Security;
using DigitalData.UserManager.Application;
using DigitalData.UserManager.Application.DTOs.User;
using DigitalData.UserManager.Application.Services;
using Microsoft.AspNetCore.Authentication.JwtBearer;
using Microsoft.IdentityModel.JsonWebTokens;
using Microsoft.IdentityModel.Tokens;
using Microsoft.OpenApi.Models;
using System.Security.Claims;
using static System.Net.Mime.MediaTypeNames;
var builder = WebApplication.CreateBuilder(args);
@@ -24,7 +21,7 @@ var apiParams = config.Get<AuthApiParams>() ?? throw new InvalidOperationExcepti
// Add services to the container.
builder.Services.Configure<AuthApiParams>(config);
builder.Services.AddConsumerApiServiceFromConfiguration(config);
builder.Services.AddConsumerApiService(config);
builder.Services.AddCryptoFactory(config.GetSection("CryptParams"));
builder.Services.AddJwtSignatureHandler<ConsumerApi>(api => new Dictionary<string, object>
{
@@ -96,9 +93,7 @@ builder.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
ValidateAudience = true,
ValidAudience = apiParams!.DefaultConsumer.Audience,
ValidateLifetime = true,
IssuerSigningKey = issuerSigningKeyInitiator?.Value,
NameClaimType = JwtRegisteredClaimNames.Name,
RoleClaimType = ClaimTypes.Role
IssuerSigningKey = issuerSigningKeyInitiator?.Value
};
options.Events = new JwtBearerEvents