Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
4618b06
Initial plan
Copilot Jan 21, 2026
e4c09d2
Updated plan with new requirements
Copilot Jan 21, 2026
f63c338
Add Unauthenticated authentication provider with CLI support, tests, …
Copilot Jan 21, 2026
1a2f633
Fix typo in UnauthenticatedAuthenticationBuilderExtensions comment
Copilot Jan 21, 2026
b6d0fd5
Update src/Cli/Utils.cs
JerryNixon Jan 22, 2026
a441af8
Merge branch 'main' into copilot/add-unauthenticated-auth-provider
JerryNixon Jan 22, 2026
e3fb034
Address PR review comments: add Unauthenticated scheme mapping, use e…
Copilot Jan 22, 2026
00444b8
Merge branch 'main' into copilot/add-unauthenticated-auth-provider
RubenCerna2079 Jan 28, 2026
f0b25d0
Address PR review comments: rename folder, update docs, simplify warn…
Copilot Jan 28, 2026
ac245d6
Merge branch 'main' into copilot/add-unauthenticated-auth-provider
Aniruddh25 Feb 11, 2026
0330922
Merge branch 'main' into copilot/add-unauthenticated-auth-provider
JerryNixon Feb 13, 2026
17844ce
Change default authentication provider from AppService to Unauthentic…
Copilot Feb 13, 2026
8b364ca
Remove unused using directive from ValidateConfigTests.cs
Copilot Feb 21, 2026
015659f
Merge branch 'main' into copilot/add-unauthenticated-auth-provider
Aniruddh25 Feb 21, 2026
0d0b3f8
Use IsJwtConfiguredIdentityProvider() in Startup.cs for cleaner code
Copilot Feb 21, 2026
86dfde1
Merge branch 'main' into copilot/add-unauthenticated-auth-provider
Aniruddh25 Mar 4, 2026
a62d2fa
Fix: Revert AuthenticationOptions record default to AppService for ba…
Copilot Mar 5, 2026
9c68fb7
Change default authentication provider to Unauthenticated and update …
Copilot Mar 5, 2026
58e0328
Merge branch 'main' into copilot/add-unauthenticated-auth-provider
Aniruddh25 Mar 5, 2026
b0add00
Merge branch 'main' into copilot/add-unauthenticated-auth-provider
RubenCerna2079 Mar 6, 2026
5dfac7d
Merge branch 'main' into copilot/add-unauthenticated-auth-provider
Aniruddh25 Mar 7, 2026
afbe0be
Merge branch 'main' into copilot/add-unauthenticated-auth-provider
Aniruddh25 Mar 7, 2026
a8781ac
Update snapshot files to use Unauthenticated as default provider
Copilot Mar 8, 2026
bb114bf
Add --auth.provider AppService to config generator command files for …
Copilot Mar 8, 2026
d9b2ec5
Revert config-generator commands and update test configs to use Unaut…
Copilot Mar 8, 2026
684a9c6
Update Service.Tests snapshots to use Unauthenticated provider
Copilot Mar 8, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions schemas/dab.draft.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -390,6 +390,10 @@
{
"const": "Custom",
"description": "Custom authentication provider defined by the user. Use the JWT property to configure the custom provider."
},
{
"const": "Unauthenticated",
"description": "Unauthenticated provider where all operations run as anonymous. Use when Data API builder is behind an app gateway or APIM where authentication is handled externally."
}
],
"default": "AppService"
Expand Down
1 change: 1 addition & 0 deletions src/Cli.Tests/ConfigureOptionsTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -664,6 +664,7 @@ public void TestUpdateCorsAllowCredentialsHostSettings(bool allowCredentialsValu
[DataRow("Appservice", DisplayName = "Update authentication.provider to AppService for Host.")]
[DataRow("azuread", DisplayName = "Update authentication.provider to AzureAD for Host.")]
[DataRow("entraid", DisplayName = "Update authentication.provider to EntraID for Host.")]
[DataRow("Unauthenticated", DisplayName = "Update authentication.provider to Unauthenticated for Host.")]
public void TestUpdateAuthenticationProviderHostSettings(string authenticationProviderValue)
{
// Arrange -> all the setup which includes creating options.
Expand Down
5 changes: 4 additions & 1 deletion src/Cli.Tests/EndToEndTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1121,12 +1121,15 @@ public async Task TestExitOfRuntimeEngineWithInvalidConfig(
[DataRow("AppService", true)]
[DataRow("AzureAD", true)]
[DataRow("EntraID", true)]
[DataRow("Unauthenticated", true)]
public void TestBaseRouteIsConfigurableForSWA(string authProvider, bool isExceptionExpected)
{
string[] initArgs = { "init", "-c", TEST_RUNTIME_CONFIG_FILE, "--host-mode", "development", "--database-type", "mssql",
"--connection-string", SAMPLE_TEST_CONN_STRING, "--auth.provider", authProvider, "--runtime.base-route", "base-route" };

if (!Enum.TryParse(authProvider, ignoreCase: true, out EasyAuthType _))
if (!Enum.TryParse(authProvider, ignoreCase: true, out EasyAuthType _) &&
!authProvider.Equals("Unauthenticated", StringComparison.OrdinalIgnoreCase) &&
!authProvider.Equals("Simulator", StringComparison.OrdinalIgnoreCase))
{
string[] audIssuers = { "--auth.audience", "aud-xxx", "--auth.issuer", "issuer-xxx" };
initArgs = initArgs.Concat(audIssuers).ToArray();
Expand Down
1 change: 1 addition & 0 deletions src/Cli.Tests/InitTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -301,6 +301,7 @@ public void EnsureFailureOnReInitializingExistingConfig()
[DataRow("StaticWebApps", null, null, DisplayName = "StaticWebApps with no audience and no issuer specified.")]
[DataRow("AppService", null, null, DisplayName = "AppService with no audience and no issuer specified.")]
[DataRow("Simulator", null, null, DisplayName = "Simulator with no audience and no issuer specified.")]
[DataRow("Unauthenticated", null, null, DisplayName = "Unauthenticated with no audience and no issuer specified.")]
[DataRow("AzureAD", "aud-xxx", "issuer-xxx", DisplayName = "AzureAD with both audience and issuer specified.")]
[DataRow("EntraID", "aud-xxx", "issuer-xxx", DisplayName = "EntraID with both audience and issuer specified.")]
public Task EnsureCorrectConfigGenerationWithDifferentAuthenticationProviders(
Expand Down
2 changes: 2 additions & 0 deletions src/Cli.Tests/ModuleInitializer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,8 @@ public static void Init()
VerifierSettings.IgnoreMember<RuntimeConfig>(config => config.IsStaticWebAppsIdentityProvider);
// Ignore the IsAppServiceIdentityProvider as that's unimportant from a test standpoint.
VerifierSettings.IgnoreMember<RuntimeConfig>(config => config.IsAppServiceIdentityProvider);
// Ignore the IsUnauthenticatedIdentityProvider as that's unimportant from a test standpoint.
VerifierSettings.IgnoreMember<RuntimeConfig>(config => config.IsUnauthenticatedIdentityProvider);
// Ignore the RestPath as that's unimportant from a test standpoint.
VerifierSettings.IgnoreMember<RuntimeConfig>(config => config.RestPath);
// Ignore the GraphQLPath as that's unimportant from a test standpoint.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
},
Mode: Production
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
},
Mode: Production
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
},
Mode: Production
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
AllowCredentials: false
},
Authentication: {
Provider: AppService
Provider: Unauthenticated
}
}
},
Expand Down
Loading
Loading