2017-04-13 55 views
0

我正在爲我們的下一個API設置OAuth 2。預期的用途是允許其他軟件與我們的API進行交互。我面臨的問題是決定如何讓一個用戶(管理員)通過批准應用程序來設置集成,然後允許其他軟件中的所有用戶在我們的軟件中執行操作,同時仍然跟蹤正在執行行動。我正在考慮使用它們將設置的標題或參數來表示用戶執行操作。OAuth 2公司 - >員工等級

您是否有任何與此類似的設置示例,或者可以進行優化以便跟蹤用戶和操作,而無需爲每個用戶設置OAuth?

回答

1

如果您想將OAuth2服務器用作與權限委派相對的授權的用戶權限存儲(例如應用程序使用Google OAuth2訪問令牌代表其用戶執行操作),則可能需要所有權限的用戶被包括在已發佈的訪問令牌中(不僅是啓動認證/授權過程的應用程序特別請求的那些)。如何對其進行配置超出了OAuth2規範的範圍,並且特定於每個實現。

當某些應用程序調用您的API時,您應該在Authorization: Bearer accessTokenValue HTTP請求標頭中獲得訪問令牌。您必須驗證此令牌,提取其權限,並且您還可以獲取令牌的用戶信息。這可以在OAuth2內省端點執行。欲瞭解更多信息,請參閱

我不知道你是怎麼想跟蹤用戶的行爲,所以我希望上面的信息包括你的一些問題。

+0

我更加好奇公司如何建立集成,然後員工可以執行這些操作。 – CWitty

+0

嗨同意你的意見。我認爲正確的地方就是內省終點。正如在RFC7662中所提到的那樣,它被設計用於「確定關於該令牌的元信息」。資源所有者角色可以在AS和RS之間共享 –