Auth0。如何获得访问令牌中的用户权限?

时间:2019-06-23 22:55:02

标签: reactjs authentication auth0

如何使用Auth0的核心授权功能(在首次授权请求中)获得访问令牌中的用户权限?我需要所有权限数组以及有关用户的其他信息。

P.S。我已经创建了角色,权限,为用户分配了角色。 在访问令牌切换中启用了添加权限,并在API设置中启用了RBAC。

1 个答案:

答案 0 :(得分:1)

在任何文档中都不是很明显,但是添加了“ audience”参数,使得返回了API的权限数组(在我的情况下为“ settings”)。

      <Auth0Provider
        domain={process.env.REACT_APP_AUTH0_DOMAIN}
        client_id={process.env.REACT_APP_AUTH0_CLIENT_ID}
        redirect_uri={window.location.origin}
        audience={'settings'}
        onRedirectCallback={appState => {
          window.history.replaceState(
            {},
            document.title,
            appState && appState.targetUrl
              ? appState.targetUrl
              : window.location.pathname
          )
        }}
      >
        {app}
      </Auth0Provider>
  "permissions": [
    "create:settings",
    "read:settings",
    "update:settings"
  ]

然后,我想请求多个受众的权限(在我的情况下为逻辑API),但是目前您只能传递一个受众。

建议创建一个逻辑API,并将所有权限放在该API下,然后将其用作“受众群体”以撤回所有权限。

参考:https://auth0.com/docs/api-auth/tutorials/represent-multiple-apis