如何结合 AD B2C(MSAL) 和 CosmosDB

How to combine AD B2C(MSAL) and CosmosDB

我在我的 Xamarin 表单应用程序中使用 appcenter Auth 和数据,但微软正在关闭这些服务,所以我现在需要自己做。 Atm 这两个允许我使用 ADB2C 验证我的用户,然后授权他们访问 Cosmos 数据库中自己和共享的内容。

我有什么atm: 我可以通过 MSAL 登录到我的 AD B2C。 我可以使用 Microsoft.Azure.DocumentDB.Core.

访问我的数据库

我需要的是: 我需要能够生成资源令牌并配置数据库,以便只有用户才能访问他们的文档。(只发现过时且描述不佳的教程)

或者作为替代: 如何创建只有通过 msal 登录的用户才能调用的 Azure 函数? 然后我需要 Azure 函数中的用户 ID 来检查数据库。(所有教程都处理 api 调用中的用户验证,这在从应用程序调用时是不可能的)

您不能使用 AAD B2C 颁发的用户令牌访问 Cosmos DB 资源。

试试这个 link - 您需要将 B2C 令牌传递给受 AAD B2C 保护的 API,然后使用 [=16] 代表用户进行 API 调用=](AAD 服务帐户)。
https://codemilltech.com/adding-azure-ad-b2c-authentication-to-azure-functions/