如何在DevOps REST API中使用永久令牌查询所有项目的所有工作项?

时间:2019-02-04 20:03:41

标签: azure azure-devops azure-active-directory azure-logic-apps azure-devops-rest-api

设置

我正在创建一个Azure Logic应用程序(这是Microsoft出于集成目的而推荐的工具之一),以从Azure DevOps中获取所有“工作项”和“项目”。 就像我说的那样,它将与Cosmos DB数据库中的其他数据源集成。 我已经将一些内部云托管软件集成到Cosmos数据库中,因此我有一个工作流程,即查询->解析->格式化->发布。

问题和疑问

我想使用最佳的身份验证方法,以便它不链接到单个用户,而是在组织级别上更多。 (如果“管理员”员工离开公司,我将不需要使用新管理员的凭据来重新生成新令牌,等等)

我想知道哪种是此类项目的最佳途径。

将虚拟的Azure AD管理员与DevOps管理员权限相关联并将他的帐户与与DevOps的API连接一起使用是否是一个好主意? 对我来说,这似乎很混乱,我希望其他方法能起作用。

查询结果将与我们其他内部软件的其他数据源集成在一起,以进行BI报告。实际上,我们所有其他的云托管软件都具有REST API,您可以在其中创建一个永久令牌,该令牌与用户无关,而是与我们的许可证关联,并具有所有读写权限。为什么对于DevOps来说这不是问题?

不适用于我的东西

我已经尝试用自己的帐户生成令牌。我还要求我们的管理员生成一个私有访问令牌,但是它们的有效期已到,因此进行集成设置是一个问题。 我也研究过此documentation,但是所有方法似乎都使用与用户相关的身份验证,没有全面或组织范围的身份验证。

预期的工作流程

这是理想的工作流程 LogicAppsWorkflow

1 个答案:

答案 0 :(得分:0)

就像您已经研究过的一样,我相信身份验证始终在用户的上下文中。

我看到的唯一解决方案是在AAD中创建一个新用户,您可以控制该新用户,并在Logic App中为该用户使用令牌。