Azure AD login example script not working
I am trying to use Entra ID (formerly known as Azure AD) to log in to Pode.Web page.
I have referred to the Pode documentation and carefully followed the PKCE instructions to register my app. I specified http://localhost:8090/oauth2/callback as the redirect URL.
https://badgerati.github.io/Pode/Tutorials/Authentication/Inbuilt/AzureAD/#pkce
Next, I execute login-azure-ad.ps1 in the Pode.Web example directory. I changed only $clientId and $tenantId values. Nothing else has been changed.
https://github.com/Badgerati/Pode.Web/blob/fb774fb73b8c0bafbbe25bf0cc011c52b488016a/examples/login-azure-ad.ps1
Now, when I access the page with a web browser, the Entra ID sign-in screen appears, and after sign in, the 401 error page appears.
Am I doing something wrong?
I'm using
- Windows 11
- PowerShell 7.4.2
- Pode 2.10.1
- Pode.Web 1.0.0-preview1
It looks like you will need to add CORS middleware:
# Add CORS middleware
Use-PodeMiddleware -Name 'CORS' -ScriptBlock {
param($context)
$context.Response.Headers['Access-Control-Allow-Origin'] = '*'
$context.Response.Headers['Access-Control-Allow-Methods'] = 'GET, POST, PUT, DELETE, OPTIONS'
$context.Response.Headers['Access-Control-Allow-Headers'] = 'Content-Type, Authorization'
if ($context.Request.Method -eq 'OPTIONS') {
$context.Response.StatusCode = 204
return $true
}
return $false
}