我无法通过S4BO进行身份验证。我已经注册了我的应用程序(在天蓝色的门户网站中),它与https://ucwa.skype.com/websdk的webSDK演示有关 我遵循的流程如下:
我使用以下代码执行OAuth链接重定向:
https://login.microsoftonline.com/common/oauth2/authorize?response_type=code&client_id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&resource=https://webdir.online.lync.com&redirect_uri=http://myurl.dev/skype
获取已返回的验证码并使用它生成访问令牌:
POST https://login.microsoftonline.com/common/oauth2/authorize?response_type=code&client_id=db01d1f5-f2a3-4d82-b4bc-6b3b4071d7df&resource=https://webdir.online.lync.com&redirect_uri=http://acme.intranet.dev/skype
grant_type=authorization_code
code=$thecodehere
client_id=$clientidhere
client_secret=$clientsecrethere
redirect_uri=$sameuriasbefore
在此之后,我有了访问令牌。现在我需要我的用户网址。所以我做自动发现
GET https://lyncdiscover.mydomain.onmicrosoft.com
我收到的结果如下:
{
"_links": {
"self": {
"href": "https://webdir1e.online.lync.com/Autodiscover/AutodiscoverService.svc/root?originalDomain=mydomain.onmicrosoft.com"
},
"user": {
"href": "https://webdir1e.online.lync.com/Autodiscover/AutodiscoverService.svc/root/oauth/user?originalDomain=mydomain.onmicrosoft.com"
},
"xframe": {
"href": "https://webdir1e.online.lync.com/Autodiscover/XFrame/XFrame.html"
}
}
}
我尝试登录用户网址:
GET https://webdir1e.online.lync.com/Autodiscover/AutodiscoverService.svc/root/oauth/user?originalDomain=mydomain.onmicrosoft.com
HEADERS:
Authorization: Bearer + theAccessTokenFromAbove
Referer: https://webdir1e.online.lync.com/Autodiscover/XFrame/XFrame.html
在此之后我得到403 Unathorized。我哪里错了?
答案 0 :(得分:0)
- 获取已返回的验证码并使用它生成访问令牌
醇>
在此步骤作为资源,您需要指定resource=https://webdir1e.online.lync.com
(注意 1e )才能访问此特定中心。
实际上,从这一点开始,您必须在每个新服务器上进行身份验证,因此在所有webdirXX上,然后在webpoolXXXXX上进行身份验证。
我写了一篇巨大的互动文章,详细描述了请求流程(在我花了一周的时间来反向设计outlook.com如何做到这一点,因为MSDN文档是 - 至少在撰写本文时 - 不完整和不正确),也许它可以使用:
如果您将应用重定向网址配置为文章网址(当然是暂时的),您甚至可以直接测试查询。
此外,可以在Github上找到“一体式”自动发现和身份验证代码(带现场演示):