标签: azure-api-apps

通过浏览器表单进行身份验证时从Azure API App获取用户信息

x-zumo-auth使用Postman 在Chrome和标头中进行身份验证时,我的API应用程序使用控制器中的以下代码成功识别用户的upn:

Runtime runtime = Runtime.FromAppSettings(Request);
EmaUserInfo user = runtime.CurrentUser;
TokenResult token = await user.GetRawTokenAsync("aad");
string upn = token.Claims[ClaimTypes.Upn];
Run Code Online (Sandbox Code Playgroud)

但是,当使用Microsoft的AzureCards控制台客户端示例中的代码(将浏览器添加到窗体窗口并捕获zumo令牌)时,我无法获取用户的aad令牌并从API应用程序中收到以下错误:

Request to https://[gateway].azurewebsites.net/api/tokens?tokenName=aad&api-version=2015-01-14 GET failed BadRequest 400 (Bad Request)
{
  "status": 400,
  "source": "https://[gateway].azurewebsites.net/api/tokens?tokenName=aad&api-version=2015-01-14",
  "message": "Microservice '[API App]' only has permissions for token ''. Can't get token 'aad'"
}
Run Code Online (Sandbox Code Playgroud)

有趣的是,这甚至发生在我设置断点并将zumo令牌从我的测试程序复制到邮递员时.程序失败,邮递员成功返回.据我所知,他们发送完全相同的请求.我能错过什么?

编辑:我已经做了一些测试,发现Postman方法在隐身模式下完成时会产生相同的错误.这让我相信它不仅仅是x-zumo-auth需要设置的标题,而且还需要设置一些cookie以便用户正常工作.如果我生成令牌,从apiapp url中删除cookie并仅使用令牌POST请求,我也会收到错误.

c# authentication azure azure-api-apps

1
推荐指数
1
解决办法
992
查看次数

从 Java 对 Azure API 应用程序进行身份验证

我有一个与这篇文章类似的问题:使用 ADAL 对 Azure API 应用程序进行身份验证,但就我而言,我有一个客户,其 Java 客户端托管在 JBoss 中,需要访问我的 API。该服务被保护为“公共(经过身份验证)”,并且我从浏览器访问它没有任何问题。我知道我可以在 .net 中创建 Azure API 应用程序客户端,但我找不到任何有关如何从 Java 进行身份验证的示例。目前这是否可能,如果可以,是否有人有任何有帮助的样本或建议?

java azure azure-active-directory azure-api-apps

1
推荐指数
1
解决办法
6964
查看次数

azure api-apps,逻辑应用程序,web-apps和azure功能之间的区别

azure API-apps,逻辑应用程序,web-apps和azure功能有什么区别?它对开发人员有什么不同?

cloud azure azure-mobile-services azure-logic-apps azure-api-apps

1
推荐指数
1
解决办法
2279
查看次数

Azure 函数代理返回错误 500

目前我在英国有 Azure API 应用程序,但我想在香港为我在中国的用户创建一个代理来访问服务器,而不会对连接在欧盟分配的数据库服务器产生太大的性能影响。

我只是在位于东亚的 Azure 功能上设置了代理功能。不幸的是,我通过邮递员在 api 请求中不断收到错误代码 500。

如何跟踪导致错误代码 500 的错误?

azure-api-apps azure-functions azure-function-app-proxy

1
推荐指数
1
解决办法
2126
查看次数

适用于Linux Docker容器日志记录的App Service

我已将asp.net core 2.0.应用程序部署到azure linux docker容器中,并且我试图找出处理应用程序日志的最佳方法。

我只是无法进入一些好的/最佳实践工作流。

当然,对日志有Kudu服务或FTP访问,它们都显示docker日志,但问题是如何很好地处理日志级别?

像往常一样,我想Warning在生产中打开和打开,但如果出现问题,我想打开Trace以查看所有内容,但不进行重新部署/重新启动/任何操作。由于我们在docker中并且无法访问,appsettings.json因此reloadOnChange显然无法正常工作,我不确定该怎么做?

这种情况下的最佳实践是什么?

azure azure-web-sites azure-api-apps azure-web-app-service

1
推荐指数
1
解决办法
3035
查看次数

从api响应中动态删除属性

我有一个api,其响应如下
"prop1":"SomeValu1",
"prop2":"SomeValue2" , "prop3
":null,
"prop4":"SomeValue4"

问题是,基于输入,一些属性将为null(预期行为),我不希望在响应中返回.像这样的东西(prop3不存在)

"prop1":"SomeValu1",
"prop2":"SomeValue2",
"prop4":"SomeValue4"

哪个属性为null基于运行时逻辑.任何想法我怎么能这样做?

c# api asp.net-web-api azure-api-apps

0
推荐指数
1
解决办法
941
查看次数

如何通过 Azure DevOps API 获取与工作项关联的拉取请求

我试图列出与工作项关联的所有拉取请求,但根据工作项 API,似乎没有办法获取它:

GET https://dev.azure.com/{org}/{project}/_apis/build/builds/123456/workitems?api-version=6.0
Run Code Online (Sandbox Code Playgroud)

上面返回工作项列表,例如:

{
  "count": 40,
  "value": [
    {
      "id": "156267",
      "url": "https://dev.azure.com/xxx/_apis/wit/workItems/12345"
    },
    ...
  ]
}
Run Code Online (Sandbox Code Playgroud)

现在,如果我仍然决定查询每个返回的工作项,我仍然看不到拉取请求。例如:

GET https://dev.azure.com/xxx/_apis/wit/workItems/12345
Run Code Online (Sandbox Code Playgroud)

上面返回一个关于对工作项进行的更新的 JSON 对象,但这可以是提交、状态更新或注释。

有没有办法获取每个工作项目的 PR 列表?

谢谢

azure-api-management azure-api-apps azure-devops azure-devops-rest-api

0
推荐指数
1
解决办法
3045
查看次数