It turns out that the authentication configuration must include this:
excludedPaths: [
'/admin/*'
]
So the whole authentication then looks like this:
resource filesFunctionAuthSettings 'Microsoft.Web/sites/config@2024-04-01' = {
parent: filesFunction
name: 'authsettingsV2'
properties: {
platform: {
enabled: true
}
globalValidation: {
requireAuthentication: true
unauthenticatedClientAction: 'RedirectToLoginPage'
redirectToProvider: 'AZURE_AD_B2C'
excludedPaths: [
'/admin/*'
]
}
identityProviders: {
customOpenIdConnectProviders: {
AZURE_AD_B2C: {
registration: {
clientId: EntraClientID
clientCredential: {
clientSecretSettingName: 'AZURE_AD_B2C_AUTHENTICATION_SECRET'
}
openIdConnectConfiguration: {
wellKnownOpenIdConfiguration: b2cConfigurationUrl
}
}
}
}
}
login: {
tokenStore: {
enabled: true
}
}
}
dependsOn: [
filesFunction
deploymentScript
]
}
And then everything works as it should.