首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure API Powershell

Azure API Powershell
EN

Stack Overflow用户
提问于 2017-03-23 21:55:05
回答 3查看 458关注 0票数 0

我正在为我的网站设置自动部署管道,作为其中的一部分,我必须使用VSTS RM自动导入Api。我在VSTS任务中使用自定义PS脚本实现了这一点。我用过“傲慢号”来进口。

i.e

代码语言:javascript
复制
Import-AzureRmApiManagementApi –Context $apimContext –SpecificationFormat 'swagger' –SpecificationUrl 'http://mywebapp.com/swagger/docs/v1' –Path 'apis'

为了提高安全性,我们实现了重定向由客户端证书保护的http请求https。问题来了。

现在,我们无法使用上面的命令导入,因为API管理器没有绕过证书验证的选项,所以返回403禁止的错误。怎样才能解决这个问题呢?

甚至我也尝试过用特定的证书调用-webrequest,并导入在本地机器上工作良好的API。

$swaggerurl="https://mywebapp.org/swagger/docs/1“$cert =新对象https://mywebapp.org/swagger/docs/1 $test=Invoke-WebRequest -Uri "$swaggerurl”-Certificate $cert $test.statuscode

导入-AzureRmApiManagementApi-Context $apimContext -SpecificationFormat 'swagger‘-SpecificationUrl 'http://mywebapp.com/swagger/docs/v1’-Path 'apis‘

但不是在VSTS内嵌电源壳。它不接受证书值并返回403禁止的错误。

请告诉我如何解决这个问题?

发行:

1.由于swagger url上的https客户端证书验证,无法将其导入到API管理器。

  1. VSTS内联电源外壳不接受证书参数详细信息,即使我使用正确的证书。同样的情况也适用于本地机器。VSTS内置电源壳是否有任何限制。

提前谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-06-13 19:41:12

此问题已通过将私有代理更改为管理帐户来解决。现在一切都如预期的那样:)

使用VSTS私有代理导入API

票数 0
EN

Stack Overflow用户

发布于 2017-03-24 04:33:11

使用Azure PowerShell步骤/任务代替。(包括在部署类别中)

票数 0
EN

Stack Overflow用户

发布于 2017-03-26 19:44:48

为此,API服务需要代表您将WebRequest发送到url,请求中包含一个ClientCertificate。我们目前没有提供使用客户端证书调用的选项。

唯一可用的选项是使用Powershell ( -SpecificationPath )制作WebRequest,将swagger下载到本地文件,并在cmdlet中使用cmdlet参数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42987720

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档