Xác thực dựa trên mã thông báo đẩy của Apple là một thay thế cho việc sử dụng chứng chỉ của nhà cung cấp để kết nối với APN. API nhà cung cấp hỗ trợ JSON Web Token (hoặc JWT), một tiêu chuẩn mở, để chuyển các xác thực quyền sở hữu tới các APN cùng với thông báo đẩy.
Để tạo ra một nhà cung cấp thẻ, có được một khóa riêng để ký dấu hiệu như mô tả trong Tạo ra một nhà cung cấp phổ Tokenin App phân phối Hướng dẫn. Bạn nên tạo mã thông báo có tiêu đề chứa ID khóa gồm 10 ký tự (con). Phần xác nhận mã thông báo chứa Tổ chức phát hành (số) là ID nhóm gồm 10 ký tự. Bạn có thể lấy ID nhóm và các giá trị ID khóa từ tài khoản nhà phát triển của mình. Yêu cầu cũng sẽ chứa Số phát hành tại (iat) là số giây từ Epoch trong UTC khi mã thông báo được tạo. Mã thông báo phải được ký bằng Thuật toán chữ ký số Elliptic Curve (ECDSA) sử dụng đường cong P-256 và thuật toán băm SHA-256 (ES256), được chỉ định làm giá trị trong khóa thuật toán (alg).
{
"alg": "ES256",
"kid": "ABC123DEFG"
}
{
"iss": "DEF123GHIJ",
"iat": 1437179036
}
Để biết thêm thông tin cùng với danh sách các thư viện có sẵn để tạo ra ký tokens web JSON, hãy tham khảo https://jwt.io
Đây là một thư viện nhanh chóng ký JSON Web Mã Số của bạn (hoặc JWT): kylef/JSONWebToken.swift
Lưu ý: Chỉ mã thông báo nhà cung cấp được ký bằng thuật toán ES256 mới được hỗ trợ bởi APN. JWT hoặc JWT không được bảo mật đã ký với các thuật toán khác sẽ bị từ chối với một phản hồi cho biết Mã thông báo nhà cung cấp không hợp lệ.
NGUỒN: APPLE : Provider Authentication Tokens
WWDC 2016 - Phần 724: Token Based Authentication
Nguồn
2016-09-24 05:06:51
là "Apple Push Notification Xác thực chủ chốt" cần thiết để tạo chứng chỉ sản xuất cho "Apple Push Notification dịch vụ SSL"? – Sujay
Không, Đây là giải pháp thay thế cho chứng chỉ SSL. –