我正在尝试在托管@ Azure的Node.js服务器上为POST请求设置身份验证。
我正在使用this示例:
passport.use(new OIDCStrategy({
callbackURL: config.creds.returnURL,
realm: config.creds.realm,
clientID: config.creds.clientID,
clientSecret: config.creds.clientSecret,
oidcIssuer: config.creds.issuer,
identityMetadata: 'https://login.microsoftonline.com/TenantGuidOrTheWordCOMMON/v2.0/.well-known/openid-configuration',
skipUserProfile: config.creds.skipUserProfile,
responseType: config.creds.responseType,
responseMode: config.creds.responseMode,
(tenant: "Guid from AzureAD-Endpoints-Button"),
(validateIssuer: false/true)
}, (...)
虽然我的代码会将我重定向到" https://login.microsoftonline.com"页面(这很好),在输入我的电子邮件地址后,它会立即将我重定向到其他地方。
我在browserUrl中收到错误:"客户端不存在" ... 它说我应该创建一个应用程序@" https://apps.dev.microsoft.com"。
为什么?我有一个AppService" MyService",同一订阅中的Azure AD和Azure AD中的应用程序注册" for" MyApp"。
我没有得到微软的所有这些设置,属性和门户我只是被这一切所淹没......(更不用说还有一个" OLD"门户网站)
接下来的几天我会尝试this Azure Step-By-Step Guide也许它会以某种方式帮助我......
答案 0 :(得分:0)
对于您正在使用的此示例,您无需修改OIDCStrategy
对象中的参数。相反,您需要在client_config_*.js.
个文件中配置AAD设置。就像文档在https://github.com/AzureAD/passport-azure-ad/tree/master/examples/login-oidc描述的那样。
顺便说一下,我们在Classic Portal上管理我们的AAD应用程序。
答案 1 :(得分:0)
就像我对"Has anyone successfully used Azure AD to authenticate users for a Node.js web application?"
的回答一样 中设置了这样的身份验证(无代码)