2016-07-22 139 views
0

我正在使用交互式網絡sdk登錄https://ucwa.skype.com/websdk。我使用Azure AD登錄成功登錄。使用F12工具,我可以看到,我有一個有效的oauth標記。UCWA - 針對不同應用的不同結果

現在,我拿這個令牌,並嘗試通過這樣的GET請求得到一個Person對象:_HTTPS://webpoolam30e08.infra.lync.com/ucwa/oauth/v1/applications/113782897528/me

這是結果:

{ 
"uri": "sip:[email protected]", 
"name": "john doe", 
"_links": { 
    "self": { 
    "href": "/ucwa/oauth/v1/applications/111364079681/me" 
    } 
}, 
"rel": "me" 

}

我想到什麼是對我這樣的詳細信息:

{ 
    "uri": "sip:[email protected]", 
    "name": "john doe", 
    "emailAddresses": [ 
    "xxx" 
    ], 
    "company": "my company name", 
    "workPhoneNumber": "tel:+123456789", 
    "endpointUri": "sip:xxx;opaque=user:epid:4JNzkgeuabct-CSuIgYV8gAA;gruu", 
    "_links": { 
    "self": { 
     "href": "/ucwa/oauth/v1/applications/113782897528/me" 
    }, 
    "note": { 
     "href": "/ucwa/oauth/v1/applications/113782897528/me/note" 
    }, 
    "presence": { 
     "href": "/ucwa/oauth/v1/applications/113782897528/me/presence" 
    }, 
    "location": { 
     "href": "/ucwa/oauth/v1/applications/113782897528/me/location" 
    }, 
    "reportMyActivity": { 
     "href": "/ucwa/oauth/v1/applications/113782897528/me/reportMyActivity" 
    }, 
    "photo": { 
     "href": "/ucwa/oauth/v1/applications/113782897528/photos/xxxx" 
    } 
    }, 
    "rel": "me" 
} 

我發現結果取決於應用程序ID。如果我打開Office365門戶網站(_https://outlook.office.com/owa)並使用F12工具搜索有效的應用程序ID,那麼我會得到預期的結果。即使使用我從交互式web sdk示例中獲得的OAuth令牌。所以這不能是安全或許可問題? 我授予對azure管理門戶中所有權限的訪問權限。

而且很奇怪的是,我得到了相同的OAuth令牌不同的狀態代碼爲這兩個非常相似的請求

_HTTPS://webpoolam30e08.infra.lync.com/ucwa/oauth/v1/applications//ME /存在

- > 200 OK

_HTTPS://webpoolam30e08.infra.lync.com/ucwa/oauth/v1/applications//ME /存在

- > 403禁止

{ 
    "code": "Forbidden", 
    "message": "The requested operation isn't allowed." 
} 

那麼,爲什麼會出現兩個應用程序,什麼之間的差異是需要得到同樣的結果?蔚藍配置中是否缺少任何東西?

感謝您的幫助

回答

0

UCWA,併爲商務在線在更大程度上的Skype處於預覽階段這可能有助於解釋爲什麼你看到一個不同的結果這兩個應用程序之間。以用戶身份登錄O365門戶網站時,您很可能從Exchange獲取補充信息,或者門戶網站能夠使用未公開公開的內部API(和許可)從UCWA接收更多信息。

如果我沒有記錯及以上您的要求的例子是如下:

  • /UCWA/OAuth的/ V1 /應用/ 113782897528/ME /存在 - O365門戶
  • /UCWA/OAuth的/ V1 /應用程序/ 112861033140/ME /存在 - 非門戶

你所看到的是,使用在線客戶端時,存在目前尚未啓用(一個更好的詞可能是API不是公開曝光)爲UCWA。

0

在應用程序之間共享令牌似乎是一種安全違規。該令牌是爲特定資源提供的,服務器可能會驗證您提供的令牌是否與該應用程序創建的範圍匹配。 你試圖通過共享令牌來執行什麼樣的場景?

1

通過「讀取/寫入Skype用戶信息(預覽)」授權權限,可以在預覽模式下訪問狀態。您可能沒有訪問它,但這裏的是什麼樣子Azu​​re中的廣告圖片,如果你這樣做:

SfB Online Permissions

我創建一個連接到SFB在線,並允許您基於UCWA原生應用程序設置你的存在:

https://github.com/tamhinsf/ucwa-sfbo-console

只需按照README註冊自己的應用程序和插件的設置爲我的代碼。我將每個API調用的結果輸出到控制檯,以便您可以看到發生了什麼。

我也製作了你一直使用的Interactive Web SDK Samples的分支,它將Azure AD設置整合到單個文件中。您可能希望本地副本更仔細地檢查和修改呼叫:

https://github.com/tamhinsf/skype-web-sdk-samples