Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Office365 NT服务等后台应用如何与Office 365中的MFA配合使用_Office365_Exchangewebservices_Multi Factor Authentication - Fatal编程技术网

Office365 NT服务等后台应用如何与Office 365中的MFA配合使用

Office365 NT服务等后台应用如何与Office 365中的MFA配合使用,office365,exchangewebservices,multi-factor-authentication,Office365,Exchangewebservices,Multi Factor Authentication,Windows上的My NT服务使用EWS API访问Office 365帐户以执行某些定期作业。 它是用C++编写的。 当客户安装我的应用程序时,他选择NT服务用于发送EWS请求的用户/密码。用户/密码保存在加密视图中的某个conf文件中。 现在,Microsoft强制将MFA用于Office 365。 问题是,如果后台NT服务不与用户交互,它如何通过带有附加SMS代码的MFA? 我读过关于应用程序pasword的文章 这是可行的,但他们写道“你的管理员可能不允许你使用应用程序密码”。 此外

Windows上的My NT服务使用EWS API访问Office 365帐户以执行某些定期作业。 它是用C++编写的。 当客户安装我的应用程序时,他选择NT服务用于发送EWS请求的用户/密码。用户/密码保存在加密视图中的某个conf文件中。 现在,Microsoft强制将MFA用于Office 365。 问题是,如果后台NT服务不与用户交互,它如何通过带有附加SMS代码的MFA? 我读过关于应用程序pasword的文章

这是可行的,但他们写道“你的管理员可能不允许你使用应用程序密码”。 此外,它还增加了用户管理此应用程序密码的问题。 是否有其他解决方案可以从应用程序中使用不与用户交互的MFA(如NT服务)?
有人能帮忙吗?

一种更简单的处理方法是使用条件MFA或受信任的IP有效地允许你的应用绕过它(假设它应该在受信任的上下文中运行)

TOTP(基于时间的一次性密码)作为次要因素是最自动化的,但我建议采用第一种方法,因为从长远来看,这将更加可靠


第三种选择是使用客户端凭据流,这样可以避免使用更安全的用户名和密码。为此,我可能会从EWS转移到Graph API,因为您也可以在图形中进一步扩展访问范围。

您可以在Exchange租户中注册应用程序,并使用证书进行身份验证-


无需密码提示。

谢谢您的建议。我发现我目前询问OAuth令牌的方法也应该与EWS连接一起工作。我使用POST请求来//oauth2/令牌,并授予\u type=client\u凭据&client\u id=%s&client\u secret=%s&scope=%s,我发现自动发现请求出现了问题。如果我同时使用outlook.office365.com/EWS/Exchange.asmx,则所有操作都有效。所以问题是-如果不为Office365帐户使用自动发现是正确的吗?也可以不将自动发现与Office365一起使用,因为URL是静态的,例外情况是国家租户和混合现代身份验证,但这是对客户端的威胁。谢谢您的建议。我发现我目前询问OAuth令牌的方法也应该与EWS连接一起工作。我使用POST请求来//oauth2/令牌,并授予\u type=client\u凭据&client\u id=%s&client\u secret=%s&scope=%s,我发现自动发现请求出现了问题。如果我同时使用outlook.office365.com/EWS/Exchange.asmx,则所有操作都有效。所以问题是-不为Office365帐户使用自动发现是否正确?