Bỏ qua, đến nội dung

Hướng dẫn cài đặt SMS Auth

Hướng dẫn thiết lập xác thực SMS OTP trong Digiforce, bao gồm cấu hình plugin-verification và verifier.

Điều kiện tiên quyết

  • Digiforce đã cài đặt và chạy ổn định
  • Plugin @digiforce-nc/plugin-auth-sms đã được kích hoạt
  • Plugin @digiforce-nc/plugin-verification đã được cài đặt và kích hoạt (bắt buộc)
  • Tài khoản SMS provider (Twilio, Aliyun SMS, Tencent SMS...)

Bước 1: Cấu hình SMS verifier trong plugin-verification

Plugin SMS Auth không tự gửi SMS — nó phụ thuộc hoàn toàn vào plugin-verification. Cần cấu hình verifier trước:

  1. Vào Settings → Verification → Add new verifier
  2. Chọn provider SMS (ví dụ: Twilio, Aliyun SMS)
  3. Điền thông tin provider:

Twilio:

TrườngGiá trị
Account SIDTừ Twilio Console
Auth TokenTừ Twilio Console
FromSố điện thoại gửi (ví dụ: +1234567890)

Aliyun SMS:

TrườngGiá trị
Access Key IDTừ Aliyun Console
Access Key SecretTừ Aliyun Console
Sign NameTên chữ ký SMS đã đăng ký
Template CodeMã mẫu tin nhắn
  1. Lưu verifier — ghi nhớ tên verifier đã đặt

Bước 2: Tạo authenticator SMS

  1. Vào Settings → Authentication → Add new
  2. Chọn loại SMS
  3. Đặt tên authenticator (ví dụ: sms-login)
  4. Trong ô Verifier, chọn verifier đã tạo ở Bước 1
  5. Bật/tắt Auto Signup tùy nhu cầu:
    • true: tự tạo user mới nếu chưa có tài khoản
    • false: chỉ user đã có tài khoản (đã có số điện thoại) mới đăng nhập được

Bước 3: Kiểm tra đăng nhập

  1. Mở cửa sổ ẩn danh
  2. Tại trang đăng nhập, chọn Đăng nhập bằng SMS
  3. Nhập số điện thoại → nhấn Gửi mã
  4. Nhận SMS chứa mã OTP
  5. Nhập mã OTP → nhấn Đăng nhập
  6. Xác minh đăng nhập thành công

Bước 4: Cấu hình verifier scenes (tùy chọn)

Verifier có thể cấu hình scenes khác nhau cho các trường hợp sử dụng:

  • signIn: OTP cho đăng nhập
  • signUp: OTP cho đăng ký
  • resetPassword: OTP cho đặt lại mật khẩu

Mỗi scene có thể sử dụng template SMS khác nhau.

Lưu ý

  • Kiểm tra SMS delivery: gửi thử SMS từ provider console trước khi tích hợp
  • Rate limiting: plugin-verification có thể cấu hình giới hạn số lần gửi OTP
  • TTL: mã OTP có thời hạn — mặc định vài phút, cấu hình trong verifier
  • Số điện thoại: nên lưu theo format quốc tế (ví dụ: +84912345678)