我们目前使用的是office365api,但我们在oauth过程中有点困难。在目标平台上,我们无法访问浏览器,这导致了使用oauth过程的主要问题。
微软是否像谷歌一样提供其他类型的身份验证,如有限输入设备身份验证?或者当没有可用的浏览器时,是否有任何替代方案?
谢谢!
是的,没有浏览器也有办法做到,这取决于你的场景。如果你想自己提示用户输入用户名/密码,你可以直接通过ADAL传递。例如,下面是如何使用Node.js的ADAL:https://github . com/AzureAD/azure-activedirectory-library-for-nodejs/blob/master/sample/username-password-sample . js
这样做的诀窍是Azure AD中必须已经记录了用户同意。因为这绕过了用户同意屏幕,所以必须“预先同意”。一种方法是让组织管理员在他们自己的Azure AD中注册应用程序,默认情况下,组织中的所有用户都同意。
另一种方法是使用客户端凭据流。在这种情况下,管理员为其整个组织同意一次,然后应用程序有权访问该组织中的所有邮箱。