Apple 登录
使用 Apple 账号登录 Web 端或 iOS 端应用。不支持小程序端。
步骤 1:复制回调地址
配置 Service ID 时,Return URL 要填云开发的回调地址。先复制,并保持该页面打开。
-
打开 云开发平台/身份认证/登录方式。
-
找到 Apple 登录,单击“编辑”。

-
在“身份源基础配置”中复制回调地址。

步骤 2:在 Apple Developer 配置
记录 Team ID
打开 Membership,记录 Team ID。

创建 App ID
iOS 端使用 App ID。记下其中的 Bundle ID。
-
打开 Identifiers,单击“+”。

-
选择 App IDs,单击“Continue”。

-
选择应用类型,单击“Continue”。

-
填写“Description”和“Bundle ID”,勾选“Sign in with Apple”。记下 Bundle ID。

-
单击“Continue”,确认信息后单击“Register”。

创建 Service ID
Web 端使用 Service ID。控制台的 Client ID 填这个值。
-
打开 Services IDs,单击“+”,选择 Services IDs,单击“Continue”。

-
填写“Description”和“Identifier”,单击“Continue”,再单击“Register”。


-
打开刚创建的 Service,勾选“Sign in with Apple”,单击“Configure”。

-
“Primary App ID”选择刚创建的 App ID。
-
“Domains and Subdomains”填回调地址中的域名。有自定义域名时一并填入。


-
“Return URLs”填步骤 1 复制的回调地址。
-
依次单击“Save”、“Continue”、“Register”,记下 Service ID。

创建密钥
Client Secret 用这把密钥签发。
-
打开 Keys,单击“+”。

-
填写名称,勾选“Sign in with Apple”,单击“Configure”。“Primary App ID”选择刚创建的 App ID。


-
依次单击“Save”、“Continue”、“Register”。记下 Key ID,单击“Download”下载
.p8私钥。
.p8 私钥只能下载一次。丢失后只能新建密钥。
步骤 3:生成 Client Secret
Client Secret 是用 .p8 私钥签发的 JWT(JSON Web Token)。
有效期最长 180 天。到期前重新生成,并更新控制台中的 Client Secret。
安装依赖:
pip3 install PyJWT cryptography
替换下面四项后运行,复制输出的 JWT。
import time
import jwt
TEAM_ID = "" # Membership 页面的 Team ID
CLIENT_ID = "" # Service ID
KEY_ID = "" # Keys 页面的 Key ID
PRIVATE_KEY_PATH = "" # .p8 文件路径
with open(PRIVATE_KEY_PATH) as f:
private_key = f.read()
now = int(time.time())
client_secret = jwt.encode(
{
"iss": TEAM_ID,
"iat": now,
"exp": now + 86400 * 180,
"aud": "https://appleid.apple.com",
"sub": CLIENT_ID,
},
private_key,
algorithm="ES256",
headers={"kid": KEY_ID},
)
print(client_secret)
| 配置项 | 取值 |
|---|---|
TEAM_ID | Membership 页面的 Team ID |
CLIENT_ID | Service ID |
KEY_ID | Keys 页面的 Key ID |
PRIVATE_KEY_PATH | .p8 文件路径 |
步骤 4:启用 Apple 登录
回到步骤 1 的配置页,填入身份源信息后保存并启用。


| 字段 | 填写内容 |
|---|---|
| Client ID | 步骤 2 创建的 Service ID |
| Client Secret | 步骤 3 输出的 JWT |
| Scope | 默认 openid email name,可按需修改 |

完成账号关联,保存身份源并启用。
