我如何使用 azure 活动目录验证我的 vuejs 应用程序,并获取用户所属的安全组。

问题描述 投票:0回答:1

我在这里看到了类似的东西。如何验证VueJS应用程序与Azure AD?

但它没有为我工作... ...

我的问题是,在登录时验证用户后 - 我仍然需要获得用户的安全组,该信息没有收到使用上述帖子中描述的图形-API

谢谢你的帮助

vue.js azure-active-directory microsoft-graph
1个回答
0
投票

这是我花了很长时间才弄清楚的东西,所以我在这里发布我的发现,希望这将帮助别人。

这对我来说是个难题,所以我在这里发帖 - 希望这能给别人节省一些时间。

我的问题是,我不仅需要用 azure-ad 验证我的 vuejs 应用程序,而且还需要获得用户所属的安全组。

为了达到这个目的,我是这样做的。

我使用了上面提到的vue-adal示例应用(你可以在下面找到它。https:/github.comsurvirtualvue-adal。 )--样本文件夹下。

但我还是得做一些修改,使它能按照我的要求运行。问题是,在用我的用户登录后,示例应用程序使用windows.net graph api来检索用户信息,并使用用户认证的令牌,所以我不得不在main.js中修改这个。

const graphApiBase = `https://graph.windows.net`
const graphApiResource = '00000002-0000-0000-c000-000000000000'

改成这样。

const graphApiBase = `https://graph.microsoft.com/v1.0`
const graphApiResource = '00000003-0000-0000-c000-000000000000'

此外,在return url组件中,我不得不修改axios查询来获取用户所属的安全组...所以我把这个(在home.vue文件中):

async getUserInfo () {
      let res = await this.$graphApi.get(`me`, {
        params: {
          'api-version': 1.6
        }
      })

改成这样:

async getUserInfo () {
      let res = await this.$graphApi.post(`/me/getMemberGroups`, {
        securityEnabledOnly: true
      })
      console.log(res)
      return res.data
    }

然后我从api收到的数据包含了用户所属的安全组...

© www.soinside.com 2019 - 2024. All rights reserved.