From 69efe283104f2b0031fefb488c94ff00fcc06ad2 Mon Sep 17 00:00:00 2001 From: Developer 02 Date: Wed, 15 Jan 2025 13:17:56 +0100 Subject: [PATCH] chore: Added directory search service --- src/DigitalData.Auth.API/Program.cs | 4 ++++ src/DigitalData.Auth.API/appsettings.json | 24 +++++++++++++++++++++-- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/src/DigitalData.Auth.API/Program.cs b/src/DigitalData.Auth.API/Program.cs index c2252ef..b519e96 100644 --- a/src/DigitalData.Auth.API/Program.cs +++ b/src/DigitalData.Auth.API/Program.cs @@ -2,6 +2,7 @@ using DigitalData.Auth.API.Config; using DigitalData.Auth.API.Dto; using DigitalData.Auth.API.Services; using DigitalData.Core.Abstractions.Security; +using DigitalData.Core.Application; using DigitalData.Core.Security; using DigitalData.UserManager.Application; using DigitalData.UserManager.Application.DTOs.User; @@ -37,6 +38,9 @@ builder.Services.AddJwtSignatureHandler(user => new Dictionary(config.GetSection("DirectorySearchOptions")); +builder.Services.AddDirectorySearchService(); var cnn_str = builder.Configuration.GetConnectionString("Default") ?? throw new InvalidOperationException("Default connection string is not found."); diff --git a/src/DigitalData.Auth.API/appsettings.json b/src/DigitalData.Auth.API/appsettings.json index e27e3b9..23e2b5f 100644 --- a/src/DigitalData.Auth.API/appsettings.json +++ b/src/DigitalData.Auth.API/appsettings.json @@ -5,10 +5,30 @@ "Microsoft.AspNetCore": "Warning" } }, + "AllowedHosts": "*", "ConnectionStrings": { "Default": "Server=SDD-VMP04-SQL17\\DD_DEVELOP01;Database=DD_ECM;User Id=sa;Password=dd;Encrypt=false;TrustServerCertificate=True;" }, - "AllowedHosts": "*", + "DirectorySearchOptions": { + "ServerName": "DD-VMP01-DC01", + "Root": "DC=dd-gan,DC=local,DC=digitaldata,DC=works", + "UserCacheExpirationDays": 1, + "CustomSearchFilters": { + "User": "(&(objectClass=user)(sAMAccountName=*))", + "Group": "(&(objectClass=group) (samAccountName=*))" + } + }, + "Consumers": [ + { + "Route": "api", + "Audience": "api.digitaldata.works" + }, + { + "Route": "work-flow", + "Audience": "client.digitaldata.works" + } + ], + "Issuer": "auth.digitaldata.works", "CryptParams": { "KeySizeInBits": 4096, "Padding": "OaepSHA512", @@ -36,7 +56,7 @@ } ] }, - "ConsumerAPIs": [ + "ConsumerAPIs": [ { "Name": "WorkFlow.API", "Password": "t3B|aiJ'i-snLzNRj3B{9=&:lM5P@'i�L"