Tag: exchangewebservices

Office 365 Rest API – 守护程序周身份validation

我正在尝试构建一个Ruby Daemon服务来访问Office 365 rest API。 最近通过OAuth’client_credentials’流程实现了这一点,详见本博客文章: http : //blogs.msdn.com/b/exchangedev/archive/2015/01/22/building-demon-or -服务-应用程序-与办公-365-邮件日历和联系人的API-的oauth2客户端-凭据flow.aspx 我正在努力生成有效的访问令牌。 令牌端点返回给我一个JWT,但是当使用这个令牌时,我收到了一条带有此消息的401: 使用身份validation方法获取访问令牌,该身份validation方法太弱而无法访问此应用程序。 提出的auth强度为1,要求为2 我知道client_credentials流程要求您提供X.509证书,不幸的是,博客文章中的所有示例都是针对C#的。 我在请求令牌时使用生成的自签名证书和私钥来执行客户端断言。 我按照博客文章中的步骤生成证书并更新清单以使用此证书。 这是ruby代码供参考: def request_token uri = URI.parse(“https://login.windows.net/== TENANT-ID ==/oauth2/token?api-version=1.0”) https = Net::HTTP.new(uri.host, uri.port) req = Net::HTTP::Post.new(uri.request_uri) req.set_form_data( :grant_type => ‘client_credentials’, :redirect_uri => ‘http://spready.dev’, :resource => ‘https://outlook.office365.com/’, :client_id => ‘== Client ID ==’, :client_secret => ‘== Client secret ==’ ) […]