Skip to content

Commit 6cd011d

Browse files
robgrameCopilot
andcommitted
feat(web.azure): Phase 0 scaffold for on-prem portal port
Adds package references needed for Phase 1 (Entra ID auth + Azure SQL via managed identity + Serilog parity): - Microsoft.Identity.Web.UI 4.10.0 (signin/signout/AccessDenied pages) - Azure.Identity 1.21.0 (matches Core's transitive version) - Serilog.AspNetCore 10.0.0 (parity with on-prem Web) Drops a documented appsettings.Phase1.json placeholder describing the AzureAd/Authorization/ConnectionStrings shape Phase 1 will consume; Program.cs untouched (deployment-status landing still served). Build green; 109 Azure-side tests still pass; on-prem unchanged. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 01b7858 commit 6cd011d

2 files changed

Lines changed: 42 additions & 0 deletions

File tree

src/BitLockerKeyMonitor.Web.Azure/BitLockerKeyMonitor.Web.Azure.csproj

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,18 @@
55
</ItemGroup>
66

77
<ItemGroup>
8+
<!-- Phase 0: scaffold for porting BitLockerKeyMonitor.Web from on-prem to Azure.
9+
Auth: Microsoft.Identity.Web (Entra ID OIDC) replaces the on-prem Negotiate/Kerberos handler.
10+
UI: Microsoft.Identity.Web.UI provides ready signin/signout/AccessDenied pages.
11+
AppConfig: pulls the same blkmon:* keys the Functions consumes.
12+
Azure.Identity: DefaultAzureCredential for SQL DbContext access token + AppConfig.
13+
Serilog: parity with the on-prem portal logging configuration.
14+
Phase 1 will wire Program.cs DI; Phase 2 will copy the read-only pages. -->
815
<PackageReference Include="Microsoft.Extensions.Configuration.AzureAppConfiguration" Version="8.5.0" />
916
<PackageReference Include="Microsoft.Identity.Web" Version="4.10.0" />
17+
<PackageReference Include="Microsoft.Identity.Web.UI" Version="4.10.0" />
18+
<PackageReference Include="Azure.Identity" Version="1.21.0" />
19+
<PackageReference Include="Serilog.AspNetCore" Version="10.0.0" />
1020
</ItemGroup>
1121

1222
<PropertyGroup>
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
{
2+
"Logging": {
3+
"LogLevel": {
4+
"Default": "Information",
5+
"Microsoft.AspNetCore": "Warning"
6+
}
7+
},
8+
"AllowedHosts": "*",
9+
10+
// ---- Phase 1 placeholders (NOT yet read by Program.cs) ----
11+
// Auth: Entra ID app registration to be created by `az ad app create` in Phase 1.
12+
// ClientId, TenantId, Instance get seeded into App Configuration; admin/viewer
13+
// security group object IDs likewise. Domain is the Entra primary domain.
14+
"AzureAd": {
15+
"Instance": "https://login.microsoftonline.com/",
16+
"Domain": "",
17+
"TenantId": "",
18+
"ClientId": "",
19+
"CallbackPath": "/signin-oidc",
20+
"SignedOutCallbackPath": "/signout-callback-oidc"
21+
},
22+
"Authorization": {
23+
"AdminGroupObjectId": "",
24+
"ViewerGroupObjectId": ""
25+
},
26+
"ConnectionStrings": {
27+
// Populated from App Configuration KV-reference `blkmon:ConnectionStrings:SqlDb`
28+
// which resolves to the Key Vault secret `sql-connection-string` (Active Directory
29+
// Default auth via the Web UAMI).
30+
"DefaultConnection": ""
31+
}
32+
}

0 commit comments

Comments
 (0)