office365 - CrmServiceClient 无法使用 Office365 身份验证类型和具有 MFA C# 的用户登录 Dynamics CRM

标签 office365 console-application dynamics-crm-online multi-factor-authentication

我想使用 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 引用未设置为对象实例”。

我知道最好使用 OAuth,因为它完全支持 MFA。但我不知道过去两周发生了什么变化导致它停止工作。用户一直启用 MFA,并且自查看几个月以来没有人进行任何更改。您知道为什么它现在停止工作了吗?

最佳答案

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

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

关于office365 - CrmServiceClient 无法使用 Office365 身份验证类型和具有 MFA C# 的用户登录 Dynamics CRM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67300365/

相关文章:

azure - Office365 到 Azure 目录关联 :

c# - 代码中特定行的目的是什么

c# - 应该使用 ToEntity<T> 而不是类型转换吗?

c++ - do...while 语句满足后向控制台输出一个值?

c# - C# 控制台应用程序之间的共享功能

c# - FetchXML 过滤掉重复值

dynamics-crm - 如何获得 Dynamics 365CE 个人开发环境?

node.js - 如何解析从node.js中的office 365 Rest api接收的访问 token ?

android - 用于从另一个应用程序打开 Outlook Groups 应用程序的深度链接

ms-office - 从 Outlook JavaScript Api (office.js) 调用时,Exchange EWS 的 UpdateItem 中的访问被拒绝