是否可以在没有 Web 界面的情况下以批处理模式使用 Onedrive?
Is it possible to use Onedrive in a batch mode without a web interface?
我正在阅读的所有内容都表明,为了让应用程序使用 onedrive,它必须执行 oauth2 操作才能获得凭据。但是,如果您是一个批处理过程并且没有供您的用户使用的 Web 界面怎么办?
Google 的 API 有一种特殊类型的帐户,称为服务帐户,一旦您设置了它,您就可以通过该帐户控制对所有内容的访问,无需与用户。 onedrive 有这样的东西吗?
我终于找到了。基本思路和google的服务账号是一样的,但是我觉得比较难用。但至少这个概念是支持的。
App-only authentication 不需要提示用户输入凭据,但在 100% 的情况下也不支持它。例如,API 需要用户原则来创建特殊文件夹和解析用户的个人站点。此外,它仅支持 OneDrive for Business,不支持 Consumer。消费者始终要求提示用户进行初始身份验证。
另一种选择是启动某种处理初始用户身份验证的网络服务,即。一个注册页面。这样,您就可以检索用于离线身份验证的刷新令牌并将其存储给用户。从那时起,每次身份验证都可以使用刷新令牌完成,不需要用户提示。
我正在阅读的所有内容都表明,为了让应用程序使用 onedrive,它必须执行 oauth2 操作才能获得凭据。但是,如果您是一个批处理过程并且没有供您的用户使用的 Web 界面怎么办?
Google 的 API 有一种特殊类型的帐户,称为服务帐户,一旦您设置了它,您就可以通过该帐户控制对所有内容的访问,无需与用户。 onedrive 有这样的东西吗?
我终于找到了。基本思路和google的服务账号是一样的,但是我觉得比较难用。但至少这个概念是支持的。
App-only authentication 不需要提示用户输入凭据,但在 100% 的情况下也不支持它。例如,API 需要用户原则来创建特殊文件夹和解析用户的个人站点。此外,它仅支持 OneDrive for Business,不支持 Consumer。消费者始终要求提示用户进行初始身份验证。
另一种选择是启动某种处理初始用户身份验证的网络服务,即。一个注册页面。这样,您就可以检索用于离线身份验证的刷新令牌并将其存储给用户。从那时起,每次身份验证都可以使用刷新令牌完成,不需要用户提示。