使用服务器到服务器 (S2S) 身份验证生成 Web 应用程序

使用服务器到服务器(S2S)身份验证安全地无缝地与 Microsoft Dataverse 与 Web 应用程序和服务通信。 S2S 身份验证是Microsoft市场中注册的应用用来访问其订阅者的 Dataverse 数据的常见方式。

S2S 身份验证意味着连接到 Dataverse 环境时,无需使用付费 Power Apps 用户许可证。 使用 S2S 身份验证的特殊 应用程序用户帐户 不需要支付许可证费用。 但是, 应用程序用户帐户可以调用的请求数有限制 。 使用 S2S 身份验证,将创建一个特殊的未经许可的应用程序用户帐户,并包含有关使用 Microsoft Entra ID 注册的应用程序的信息。 应用程序的身份验证不使用用户凭据,而是通过一个服务主体来进行,该服务主体是由存储在应用程序用户记录中的 Microsoft Entra ID 对象 ID 值标识的。 应用程序用户与自定义安全角色相关联,该角色控制允许应用程序执行的数据和作的类型。

使用 S2S 的应用程序或服务执行的所有操作都将以你提供的应用程序用户身份执行,而不是以访问应用程序的用户身份执行。 如果您希望应用程序代表特定用户(例如正在与应用程序交互的用户)执行数据操作,则可以在分配给该应用程序服务主体的自定义安全角色具备所需权限时应用模拟身份。 详细信息: 模拟其他用户

使用 S2S 身份验证的 Web 应用程序或服务负责控制对有权访问的数据的访问。 这通常是使用 OpenID Connect 提供程序完成的。 详细信息: 打开 ID Connect

服务器到服务器身份验证方案

有两种情况可以应用 S2S 身份验证。

Scenario Description
多租户 这是最常见的方案,用于使用Microsoft市场分发的应用。

每个 Dataverse 租户都与 Microsoft Entra ID 租户相关联。 已将您的 Web 应用程序或服务在 Microsoft Entra ID 租户中注册。

在这种场景下,任何 Dataverse 租户在向应用程序授予访问其租户中数据的同意后,都可使用该多租户应用程序。
单租户 此方案通常适用于想要为自己的租户开发应用的 Dataverse 环境,并且不打算将它们分发到其他 Dataverse 环境。

企业可以创建 Web 应用程序或服务,以连接到其租户的所有 Dataverse 环境。

在此方案中,Web 应用程序或服务只能使用相同的Microsoft Entra ID 租户连接到 Dataverse 环境。

这两种方案都有常见的元素,但存在一些差异。 由于多租户是最常见的方案,“使用多租户服务器到服务器身份验证”部分介绍了如何在此方案中使用服务器到服务器身份验证(S2S),并包含有关单租户配置选项差异的说明。

使用单租户服务器到服务器身份验证 提供了此方案的概述,并可参考多租户 S2S 身份验证内容中所述的过程。

另请参阅

使用多租户服务器间身份验证
使用单租户服务器对服务器身份验证