且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

是否有人成功使用Azure AD对Node.js Web应用程序的用户进行身份验证?

更新时间:2023-11-22 16:35:04

下面是一个代码示例,该示例与将Azure AD集成到Microsoft在GitHub上提供的NodeJS Web应用程序中,位于

Here is a code example which is about integrating Azure AD into a NodeJS web application provided by Microsoft on GitHub, at https://github.com/Azure-Samples/active-directory-node-webapp-openidconnect.

要使示例运行,您需要在示例代码中配置有关Azure AD的一些设置.

And to make the sample run, you need to configure a few settings in the sample code about your Azure AD.

我们可以在应用程序的根目录中的config.js文件中找到以下内容:

we can find the content as following shown in the config.js file in the root directory of the application:

exports.creds = {
    returnURL: 'http://localhost:3000/auth/openid/return',
    identityMetadata: 'https://login.microsoftonline.com/common/.well-known/openid-configuration', // For using Microsoft you should never need to change this.
    clientID: '<your app id>',
    clientSecret: '<your secret>', // if you are doing code or id_token code
    skipUserProfile: true, // for AzureAD should be set to true.
    responseType: 'id_token code', // for login only flows use id_token. For accessing resources use `id_token code`
    responseMode: 'query', // For login only flows we should have token passed back to us in a POST
    //scope: ['email', 'profile'] // additional scopes you may wish to pass
 };

现在您需要登录Azure管理门户(Azure AD应用程序页面的标题).点击配置标签以配置广告.

now you need to login the Azure manage portal, header to your Azure AD application page. Click the CONFIGURE tab to configure your AD.

  • 在单点登录部分下的REPLY URL形式中,将config.js中的returnURL输入:

  • Input the returnURL in config.js into the REPLY URL form under the single sign-on section:

将AD应用程序的Azure AD终结点填充到config.js中的identityMetadata属性中.如代码中的注释所示,如果您的Azure AD在Microsoft域中,例如: 然后,您不必更改设置.否则,您需要将端点config.js中终结点中的common替换为您的广告ID,您可以单击底部导航栏中的 VIEW ENDPOINT 查找ID:

fill the Azure AD endpoint of your AD application into the identityMetadata property in config.js. As the comment in the code says, if your Azure AD is in the Microsoft domain like: Then you don't have to change the setting. Otherwise, you need to replace the common in the endpoint in config.js to your AD ID, you can click the VIEW ENDPOINT at the bottom nav to find the ID:

config.js中配置clientIDclientSecret.所有人都可以在AD应用程序的 CONFIGRE 页面中找到它们: 关于密钥,您可以选择下拉列表以选择密钥的持续时间以创建新密钥,单击底部导航栏中的保存"按钮,您可以在首次创建密钥时看到密钥数据.

configure the clientID and clientSecret in config.js. You all can find them in the CONFIGRE page of your AD application: About the key, you can select the dropdown to select a duration of a key to create a new one, click the save button at the bottom nav, you can see the key data at first time you create it.

完成这些步骤后,您可以尝试示例项目.

After finishing these steps, you can try the sample project.