適用於: 具有灰色 X 符號的白色圓圈 內部租戶
外部租戶(深入了解)
在本快速入門中,您將瞭解如何使用 Microsoft Entra External ID 來執行示範註冊、登入、註銷和重設密碼案例的 iOS 範例應用程式。
先決條件
- 外部租戶。 如果您還沒有試用版,註冊免費試用
- 使用電子郵件單次密碼身分提供者選項設定的使用者流程。 如需詳細資訊,請參閱 為外部租使用者中的應用程式建立自助式註冊使用者流程。 此使用者流程可用於多個應用程式。
- 在 Microsoft Entra 系統管理中心註冊新的用戶端應用程式,針對 任何組織目錄中的帳戶和個人Microsoft帳戶進行設定。 如需詳細資訊 ,請參閱註冊應用程式 。 從應用程式 [概 觀 ] 頁面記錄下列值,以供稍後使用:
- 應用程式 (用戶端) 識別碼
- 目錄(租戶)識別碼
- 將應用程式新增至使用者流程。
- Xcode
啟用公用用戶端和原生驗證流程
若要指定此應用程式是公用用戶端,而且可以使用原生驗證,請啟用公用用戶端和原生驗證流程:
- 從 [應用程式註冊] 頁面中,選取您要啟用公用用戶端和原生驗證流程的應用程式註冊。
- 在 [管理] 下,選取 [驗證]。
- 在 [進階設定] 下,啟用公用用戶端流程:
- 針對 啟用以下行動和桌面流程,選擇 是。
- 針對 啟用原生驗證,請選擇 是。
- 選取 儲存 按鈕。
複製範例 iOS 行動應用程式
開啟 [終端機],然後流覽至您要保留程式代碼的目錄。
執行下列命令,從 GitHub 複製 iOS 行動應用程式:
git clone https://github.com/Azure-Samples/ms-identity-ciam-native-auth-ios-sample.git
前往克隆存放庫的目錄:
cd ms-identity-ciam-native-auth-ios-sample
設定範例 iOS 行動應用程式
在 Xcode 中,開啟 NativeAuthSampleApp.xcodeproj 專案。
開啟 NativeAuthSampleApp/Configuration.swift 檔案。
尋找占位符:
-
Enter_the_Application_Id_Here
,並將它取代為您稍早註冊之應用程式的 應用程式(用戶端)標識碼。 -
Enter_the_Tenant_Subdomain_Here
,並將它取代為 Directory (tenant) 子域。 例如,如果您的租戶主要網域為contoso.onmicrosoft.com
,請使用 contoso。 如果您沒有租戶子域,請瞭解如何 查看租戶詳細資料。
-
注意
請記得選擇要建置的方案以及執行已建置產品的目標位置。 每個配置都包含代表可用目的地的實際或模擬裝置清單。
執行和測試範例 iOS 行動應用程式
若要建置並執行程式碼,請從 Xcode 的 [產品] 功能選取 [執行]。 成功建置之後,Xcode 會在模擬器中啟動範例應用程式。
本指南測試 電子郵件一次性密碼 的使用。 輸入有效的電子郵件地址,選取 [註冊] [],然後啟動提交程式代碼畫面:
在上一個畫面上輸入您的電子郵件地址之後,應用程式會傳送驗證碼給它。 提交收到的程式代碼之後,應用程式會將您帶回上一個畫面,並自動將您登入。
此範例支援的其他案例
範例應用程式支援下列流程:
- 電子郵件 + 密碼 涵蓋使用具有密碼的電子郵件登入或註冊流程。
- 電子郵件 + 密碼註冊與使用者屬性 涵蓋使用電子郵件和密碼註冊,以及提交用戶屬性。
- 密碼重設 涵蓋自助式密碼重設 (SSPR)。
- 存取受保護的 API 涵蓋在使用者成功註冊或登入並取得存取令牌之後,呼叫受保護的 API。
- 網頁瀏覽器的後援 涵蓋當使用者因故無法透過原生驗證完成驗證時,使用瀏覽器型驗證作為後援機制。
使用密碼流程測試電子郵件
在本節中,您會測試使用密碼的電子郵件流程,其變體包括:使用使用者屬性進行的密碼註冊,以及自助密碼重設(SSPR)。
使用 建立使用者流程 中的步驟來建立新的使用者流程,但這次請選取 [以密碼 電子郵件] 作為驗證方法。 您必須將 國家/地區 和 City 設定為用戶屬性。 或者,您可以修改現有的使用者流程,改用 與密碼的電子郵件(選取 [外部身分識別]>[使用者流程],>SignInSignUpSample>身分識別提供者>電子郵件與密碼>儲存)。
使用步驟 將應用程式與新的使用者流程 產生關聯,然後將應用程式新增至新的使用者流程。
執行範例應用程式,然後選取省略號功能表 (...), 以開啟更多選項。
選取您想要測試的案例,例如 電子郵件 + 密碼 或 電子郵件 + 密碼註冊,使用使用者屬性 或 密碼重設,然後遵循提示。 若要測試 密碼重設,您必須先註冊用戶,為您的租使用者中的所有使用者啟用電子郵件一次性密碼。
測試呼叫受保護的 API 流程
使用 中在範例 iOS 行動應用程式內呼叫受保護 Web API 的步驟,使用原生身份驗證 從範例 Android 行動應用程式呼叫受保護的 Web API。