簡體   English   中英

適用於我的Node.js應用程序的OAuth2和Microsoft Graph API?

[英]OAuth2 and Microsoft Graph API for my Node.js app?

我想將Office365 / Graph Calendar集成添加到現有的Node.js應用程序(托管在AWS上)。 我已經與Google的日歷進行了類似的集成,並且設置起來非常簡單。 我對Microsoft版本的東西不太滿意。

我發現至少有4種不同的方法來注冊應用程序(獲取clientId和clientSecret),並且似乎每個方法都有不同的錯誤,但無法正常工作。

我認為我的問題很大一部分是因為我以前從未在MS生態系統中工作過,所以我沒有很多文檔假設的基礎知識。

我不想在Microsoft托管任何東西-我什至需要Azure帳戶嗎?

我想允許具有Office365帳戶的任何用戶將其連接到我的應用程序-我需要了解有關Active Directory的信息嗎? 這部分需要Azure嗎?

我已經找到了同時使用https://login.microsoftonline.com/common/oauth2https://login.microsoftonline.com/common/oauth2/v2.0的說明,我是否需要擔心哪個版本我使用哪種方式取決於我注冊我的應用程序的方式?

Microsoft Graph利用Azure AD對用戶進行身份驗證和授權。 該文檔指的是:

要使您的應用獲得授權,您必須先使用戶通過身份驗證。 為此,您可以將用戶連同您的應用程序信息一起重定向到Azure Active Directory(Azure AD)授權終結點,以登錄其Office 365帳戶。 用戶登錄后,並同意您的應用請求的權限(如果用戶尚未這樣做),您的應用將收到獲取OAuth訪問令牌所需的授權代碼。

因此,您需要注冊一個Azure帳戶以配置Azure AD服務。 有關更多信息,請參閱https://graph.microsoft.io/zh-cn/docs/authorization/app_authorization

同時,要在node.js應用程序中實現Microsoft Graph,可以參考以下代碼示例以獲取信息。

Matt,如果您使用oauth2/v2.0 auth終結點,則可以在沒有Azure帳戶的情況下執行此操作。 執行此操作時,可以使用Microsoft帳戶在apps.dev.microsoft.com上注冊。

有關使用Outlook REST API進行此操作的信息,請參閱本教程 ,該應用程序類似於Graph(實際上,對於Calendar操作,調用和實體是相同的)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM