2

我想使用 CrmServiceClient 和 Office365 authType 连接到 crm

string connectionString = "Url=crm_url; Username=crm_user; Password=crm_user_password; AuthType=Office365;";

var crmServiceClient = new CrmServiceClient(connectionString);

如果我使用禁用 MFA 的帐户,将建立连接。

如果我使用启用了 MFA 的帐户,则会出现错误:“无法登录到 Dynamics CRM OrganizationWebProxyClient is nullOrganizationWebProxyClient is nullObject reference not set to an instance of an object”。

我知道使用 OAuth 会更好,因为它完全支持 MFA。但我不知道在过去 2 周内它停止工作有什么变化。用户一直启用 MFA,自查看几个月以来没有人更改任何内容。你知道为什么它现在停止工作了吗?

4

2 回答 2

2

Office365 authtype 已弃用,2021 年 4 月发生了一些变化。没有明确指出它们会导致您的特定问题,但考虑到它可能相关的时间安排。
https://docs.microsoft.com/en-us/power-platform/important-changes-coming#deprecation-of-office365-authentication-type-and-organizationserviceproxy-class-for-connecting-to-dataverse

我很惊讶启用 MFA 的帐户仍然可以正常工作。我最近确实了解到,在 Office 365 Admin 中,您可以指定免于 MFA 的源 IP 地址。该设置靠近应用密码的启用/禁用。也许那里有一个 IP 地址豁免,并且您连接的 IP 最近发生了变化?

于 2021-05-28T13:07:06.153 回答
1

当将 AuthType 从 Office365 切换到 OAuth 时,一切都重新开始工作。所以这可能是因为停止支持 Office365。

我正在关注这篇文章:我正在从这篇文章中更改https://docs.microsoft.com/en-us/powerapps/developer/data-platform/xrm-tooling/use-connection-strings-xrm-tooling-connect# named-account-using-office365到这个新的https://docs.microsoft.com/en-us/powerapps/developer/data-platform/xrm-tooling/use-connection-strings-xrm-tooling-connect#oauth -using-named-account-in-office365-with-ux-to-prompt-for-authentication

您需要创建一个 Azure 应用程序并将项目中的 Xrm 包更新到较新版本,以便一切开始工作。另外我现在微软创建了一个公共应用程序进行测试(我稍后会尝试链接这个网站,或者你可以尝试自己找到它)并且你可以使用这个应用程序(但我认为这不是安全的解决方案)。

于 2021-10-06T07:20:47.530 回答