Azure 数据目录的访问令牌从 Adal.JS 获取 401

Access token getting 401 from Adal.JS for Azure Data Catalog

我正在使用 ADAL.js 构建一个 angular Web 应用程序来访问其他 Azure API,并且我成功访问了自定义 Web API、Power BI API,以及图形 API。不幸的是,我无法访问 Azure 数据目录,我正在像所有其他服务一样通过资源 URI 请求获取令牌。我已将用户和应用服务主体名称添加为目录用户,并且应用注册具有 Azure 数据目录委派访问权限。下面是我用来获取令牌然后将其附加到 header 的代码,就像我对其他 API 所做的那样。这是我访问时遇到问题的唯一 Azure API。如果有人能够提供帮助,请提前致谢。

var token = authContext.acquireToken('https://api.azuredatacatalog.com')

如果想用adad.js调用Azure Data Catalog rest api,请参考以下步骤

  1. 注册 Azure AD 应用程序

  2. 配置权限

  3. 代码

var resource ="https://api.azuredatacatalog.com"
authContext.acquireToken(resource, function (error, token) {

            // Handle ADAL Error
            if (error || !token) {
                printErrorMessage('ADAL Error Occurred: ' + error);
                return;
            }

            // Get TodoList Data
            $.ajax({
                type: "GET",
                url: "https://api.azuredatacatalog.com/catalogs/{catalog_name}/search/search?api-version={api-version}&searchTerms={search_terms}",
                headers: {
                    'Authorization': 'Bearer ' + token,
                },
            });