自定义门户:server-side sign-in

Custom portal: server-side sign-in

自 2018 年以来,我们一直在使用 APIM。由于遗留门户已被弃用,我们想要更多的自由,我们决定完全跳过默认的 APIM 门户,并嵌入APIM API 方法在我们自己的网站上,使用 Postman 作为文档门户。

大部分方法都很简单,但不清楚如何sign-in用户?我们当然可以获取他们的统计数据和 API 密钥,但我们如何知道他们是他们声称的那个人?

self-hosted GitHub 门户中的代码更面向 client-side。

编辑。从 the usersService.ts module 看来,GET /identity 与 Authorization header 由 Basic 和 base64 编码的一对 userId:password 组成将被调用。

但我不断收到:

{
    "error": {
        "code": "AuthenticationFailedInvalidHeader",
        "message": "Authentication failed. The 'Authorization' header is provided in an invalid format."
    }
}

Basic 更改为 Bearer 可预测地产生 InvalidAuthenticationToken

好的,解决了(在 Microsoft 支持的帮助下,他们发送了他们这边正在调用的方法的屏幕截图)。

似乎该方法不能像所有其他方法一样从 management.azure.com 调用。没有。它必须从 Management API URL 调用,可以在 Management API 中找到您在 Azure 中的 APIM 部分。

奇怪的是,管理 API 开关甚至不必打开。

你的 GET 请求应该是这样的:

https://my_apim_instance.management.azure-api.net/subscriptions/my_subscription_id/resourceGroups/my_resource_group/providers/Microsoft.ApiManagement/service/my_apim_instance/identity?api-version=2019-12-01

现在请向永远乐于助人的 post 用户提供永远有用的 post 解决方案建议。