为rest api创建自定义Azure DevOps服务连接

为rest api创建自定义Azure DevOps服务连接,azure,azure-devops,oauth-2.0,azure-devops-extensions,serviceconnection,Azure,Azure Devops,Oauth 2.0,Azure Devops Extensions,Serviceconnection,我在互联网上有一个受Azure AD保护的REST API和一个必需的头(自定义apikey)。 在示例中,您可以使用客户端凭据流与postman一起调用此API。这一切都很好 我现在正在开发一个定制的Azure DevOps扩展,它以ADO的工作项形式显示从该API返回的信息。我可以通过通用服务连接从扩展中调用API(如果我从API中删除了安全性)。现在我想让保安工作起来 因此,我想创建一个自定义服务连接,该连接将使用ClientID和ClientSecret(客户端凭据流)从azure AD

我在互联网上有一个受Azure AD保护的REST API和一个必需的头(自定义apikey)。 在示例中,您可以使用客户端凭据流与postman一起调用此API。这一切都很好

我现在正在开发一个定制的Azure DevOps扩展,它以ADO的工作项形式显示从该API返回的信息。我可以通过通用服务连接从扩展中调用API(如果我从API中删除了安全性)。现在我想让保安工作起来

因此,我想创建一个自定义服务连接,该连接将使用ClientID和ClientSecret(客户端凭据流)从azure AD获取accesstoken。 当我有工作,我可以调用我的API在一个安全的方式。 另外,如何将强制标头添加到api调用中?我还需要将header as字段添加到服务连接中,对吗? 因此,我想我最终得到了一个定制服务连接实例,该实例要求提供
TenantId
ClientId
客户机密
访问者/范围
标题列表(名称/值)

关于更多参考博客文章,我使用了以下内容:

{
“id”:“api服务连接”,
“说明”:“api的服务连接”,
“类型”:“ms.vss-endpoint.服务端点类型”,
“目标”:[
“ms.vss-endpoint.endpoint类型”
],
“财产”:{
“名称”:“调用API”,
“显示名称”:“调用API”,
“图标”:“img/world.png”,
“url”:{
“displayName”:“API Url”,
“值”:https://path-to-api",
“helpText”:“要连接到的API的Url。”
},
“输入描述符”:[
{
“id”:“api密钥”,
“名称”:“API密钥”,
“description”:“标头'ApiKey'的值”,
“输入模式”:“文本框”,
“isConfidential”:错误,
“验证”:{
“isRequired”:没错,
“数据类型”:“字符串”
}
}
],
“身份验证方案”:[
{            
“type”:“ms.vss-endpoint.endpoint-auth-scheme-oauth2”//这是错误的。。。
}
],
“标题”:[
{
“名称”:“ApiKey”,
值“{endpoint.api key}}”
}
],
“帮助标记”:”
}
}

谢谢

@Perry Qian MSFT这篇文章详细介绍了如何创建服务连接类型的实例。我想创建一个新类型,该类型将从azure ad获取访问令牌,然后使用该令牌调用我创建的api。没有关于如何创建该类型的文档。我将对此进行调查,如果我得到,我会让您知道。无论如何,谢谢你的反馈!谢谢我用了这两篇文章,但找不到其他东西。第一条和第二条