Azure Active Directory是微軟提供的雲端式身分識別與存取管理服務,我們可以在Azure AD裡面註冊自己的應用程式好讓你的應用程式與身份識別者建立信任關係,舉例來說就是我們現代人都在用的Single Sign On如:FaceBook Login、Google Login、Line Login、Apple Login等等,其中所使用的技術就是OAuth2.0,不過這篇我只會記錄我是如何在Azure Active Directory設定和註冊應用程式,所以如果想知道要如何使用OAuth2.0來進行授權可以參考這篇文章【點我前往Azure - 測試OAuth2.0授權】那麼我們就開始吧!
建立Azure AD - 應用程式註冊
首先我們進入Azure的管理介面,在上方搜尋資源的地方直接打上Azure Active Directory
進去之後直接使用上方的「加入」→「應用程式註冊」,或是下方快速動作的「新增應用程式」
接著會來到註冊應用程式的頁面
- 名稱:這裡名稱可以設定一個跟你的應用程式相同的名字
- 支援的帳戶類型:這裡要設定什麼帳戶可以存取你的Azure AD API,這裡我選擇任何組織目錄中的帳戶 (任何 Azure AD 目錄 - 多租用戶) 和個人 Microsoft 帳戶 (例如 Skype、Xbox)💡 也可以點擊「協助我選擇」看每個選項的差異
- 重新導向URI(選用):這裡我們可以先不設定,等完成註冊後再進去調整即可
- 應用程式(用戶端)識別碼:OAuth的Client ID了
- 目錄(租用戶)識別碼:使用OAuth的「Client Credentials Flow」的時候需要用到
設定重新導向URI(Redirect URI)
如果你的應用程式走的是「OAuth Authorization Code Flow」時一定要設定認證的Redirect URI,否則OAuth驗證時會告訴你說你的Redirect URI有問題然後就無法認證囉!
接著我們來設定Redirect URI,點擊「重新導向URI」→「新增平台」
設定平台就看你的應用程式是什麼平台就選什麼即可,由於我們要從「桌面應用程式/POSTMAN」做驗證所以就直接選擇「行動應用程式與桌面應用程式」
在「設定桌面+裝置」的地方輸入重新導向的URI
另外Azure Active Directory也支援多組Redirect URI,最多幾組我就沒有試過了XD
設定Client Secret
OAuth基本上都會包含一組Client ID和Client Secret而其中Client ID在我們一開始建立應用程式時在首頁可以找到Azure AD預設給的Client ID,而Client Secret則是需要自行產生一組
首先在左邊的選單找到「管理」→「憑證及祕密」→「新增用戶端密碼」
- 描述:讓你識別密碼的簡單描述
- 到期:密碼的到期日💡 這裡最長就是設定兩年,兩年之後就要再來更換你的Client Secret
設定API權限(Scope)
最後就是Scope的設定,如果走「OAuth Authorization Code Flow」會有使用者互動並且詢問資源擁有者Resource Owner(以下簡稱RO)是否要提供一些權限給應用程式做存取,如果有需要RO的某些資源的就可以在API權限頁面(Scope)添加你要詢問的權限
0 Comments
張貼留言