設定 Alipay 社交登入 (Set up social login with Alipay) (Native)
官方 Logto 連接器,支援行動裝置原生 App 的 Alipay 社交登入。
本指南假設你已對 Logto 連接器 (Connectors) 有基本了解。若不熟悉,請參閱 連接器 (Connectors) 指南以開始使用。
開始使用
Alipay Native 連接器與 Logto SDK 在行動平台上緊密合作。它利用 Alipay 的 OAuth 2.0 驗證流程,讓 Alipay 使用者可以直接用公開的 Alipay 使用者資訊登入其他 App,無需繁瑣的註冊流程。
註冊 Alipay 開發者帳號
註冊 Alipay 開發者帳號(如果你還沒有的話)。
建立並設定 Alipay 應用程式
- 使用剛註冊的帳號登入 Alipay 控制台。
- 進入「我的應用」(我的应用) 面板中的「網頁&移動應用」(网页&移动应用) 分頁。
- 點擊「立即創建」(立即创建) 按鈕開始設定你的應用程式。
- 在「應用名稱」(应用名称) 欄位依命名規範命名,並上傳「應用圖標」(应用图标),確保「應用類型」(应用类型) 選擇「移動應用」(移动应用)。若為 iOS App,需填寫唯一的「Bundle ID」;Android App 則需填寫「應用簽名」(应用签名) 與「應用包名」(应用包名)。
- 完成應用程式建立後,進入總覽頁面,點擊「添加能力」(添加能力),新增「第三方應用授權」(第三方应用授权)、「獲取會員資訊」(获取会员信息) 及「App 支付寶登入」(App 支付宝登录),以啟用 Alipay 登入。
- 前往 Alipay 客戶中心,以開發者帳號登入。點擊頂部「帳號中心」(账号中心),進入「APPID 綁定」(APPID 绑定),入口在側邊欄底部。點擊「添加綁定」(添加绑定),輸入你在步驟 4 創建的移動應用 APPID。
- 點擊「App 支付寶登入」的「簽約」(Sign) 按鈕,依照指引完成簽約流程。完成後,你會發現步驟 5 新增的能力已生效。
- 回到 Alipay 開放平台控制台頁面,在「開發資訊」(开发信息) 區塊找到「介面加簽方式(密鑰/證書)」(接口加签方式(密钥/证书))。點擊「設定」(设置) 按鈕,進入簽名方式設定頁面。建議選擇「公鑰」(公钥) 簽名模式,並將你產生的公鑰檔案內容填入文字框。
- 點擊 Alipay 控制台頁面底部的「設定」(设置) 按鈕,設定「授權回調地址」(授权回调地址)。
${your_logto_origin}/callback/${connector_id}是 Logto 預設的 redirect URI。connector_id可在 Logto 管理後台連接器詳情頁頂部找到。 - 完成上述所有步驟後,回到 Alipay 控制台頁面右上角,點擊「提交審核」(提交审核)。審核通過後,即可順利啟用 Alipay 登入流程。
你可以在本機終端機執行以下指令,使用 openssl 產生金鑰對。
openssl genrsa -out private.pem 2048
openssl rsa -in private.pem -outform PEM -pubout -out public.pem
在 Alipay 應用設定網站填寫公鑰時,請移除 public.pem 的檔頭與檔尾,刪除所有換行字元,將剩餘內容貼入「公鑰」(public key) 的文字框。
設定 Logto Alipay Native 連接器
- 在 Alipay 控制台工作區 的「我的應用」(我的应用) 面板,點擊「網頁&移動應用」(网页&移动应用) 分頁,可查詢所有應用的 APPID。
- 在前述步驟 7,你已經產生了一組包含私鑰與公鑰的金鑰對。
- 填寫 Logto 連接器設定:
appId欄位填入步驟 1 取得的 APPID。privateKey欄位填入步驟 2 產生的私鑰檔案內容。請務必將所有換行字元替換為 '\n'。私鑰檔案不需移除檔頭與檔尾。signType欄位填入 'RSA2',因為我們在「建立並設定 Alipay 應用」步驟 7 選擇了Public key簽名模式。
設定類型
| Name | Type | Enum values |
|---|---|---|
| appId | string | N/A |
| privateKey | string | N/A |
| signType | enum string | 'RSA' | 'RSA2' |
在你的 App 啟用 Alipay 原生登入
iOS
假設你已在 App 中整合 Logto iOS SDK。這樣一來,流程非常簡單,甚至不需要閱讀 Alipay SDK 文件:
1. 將 LogtoSocialPluginAlipay 加入 Xcode 專案
新增 framework:
此插件已內含 Alipay「極簡版 SDK」(极简版 SDK)。引入插件後可直接使用 import AFServiceSDK。
2. 在 LogtoClient 初始化選項中加入插件
let logtoClient = LogtoClient(
useConfig: config,
socialPlugins: [LogtoSocialPluginAlipay()]
)
Android
假設你已在 App 中整合 Logto Android SDK。這樣一來,流程非常簡單,甚至不需要閱讀 Alipay SDK 文件:
1. 下載 Alipay「極簡版 SDK」並加入專案
從 Logto 3rd-party Social SDKs 下載 Alipay「極簡版 SDK」(极简版 SDK) 至專案的 app/libs 資料夾:
project-path/app/libs/alipaySdk-15.7.9-20200727142846.aar
2. 將 Alipay「極簡版 SDK」設為依賴
打開你的 build.gradle 檔案:
project-path/app/build.gradle
新增依賴:
dependencies {
// ...
implementation(files("./libs/alipaySdk-15.7.9-20200727142846.aar")) // kotlin-script
// or
implementation files('./libs/alipaySdk-15.7.9-20200727142846.aar') // groovy-script
}
測試 Alipay 原生連接器
就是這麼簡單。別忘了 在註冊與登入流程啟用社交連接器。
啟用 Alipay 原生連接器後,你可以編譯並執行 App 測試是否正常運作。