Bỏ qua để đến nội dung

Đăng nhập bằng Google, Microsoft và GitHub

Hướng dẫn thao tác
Dành cho:
Người vận hành máy chủ, Quản trị viên không gian làm việc
Trong ứng dụng:
Quản trị hệ thống, rồi Xác thực

Hãy đăng ký một OAuth app để đăng nhập bằng Google OAuth, một app registration của Microsoft hoặc một OAuth app của GitHub, rồi dán client ID và secret vào ReputeCast: những người đã có tài khoản sẽ đăng nhập được bằng nhà cung cấp đó thay vì mật khẩu.

  • Bạn là quản trị viên hệ thống.
  • URL công khai đã cố định và truy cập được qua https:// (Quản trị hệ thống, rồi Hệ thống và cập nhật, rồi URL công khai). Các URI chuyển hướng được tạo từ URL này.
  • Bạn có thể tạo OAuth app trong Google Cloud console, Microsoft Entra admin center hoặc GitHub.

Mỗi nhà cung cấp có URI chuyển hướng riêng:

Nhà cung cấp URI chuyển hướng Scope ReputeCast yêu cầu
Google <public URL>/auth/social/google/callback openid email profile
Microsoft <public URL>/auth/social/microsoft/callback openid email profile
GitHub <public URL>/auth/social/github/callback read:user user:email, thêm read:org khi giới hạn theo tổ chức
Các phương thức đăng nhập được phép trong Quản trị hệ thống, tab Xác thực: Google đang bật, Microsoft đang tắt, GitHub đang bật và chỉ dành cho một tổ chức; mỗi phương thức có nút bút chì để mở cài đặt.
  1. Mở Quản trị hệ thống, rồi Xác thực. Trong Phương thức đăng nhập được phép, chọn nút bút chì bên cạnh Google, Microsoft hoặc GitHub. Hộp thoại hiển thị URI chuyển hướng để bạn sao chép.

  2. Tạo app ở nhà cung cấp:

    Trong Google Cloud console, mở APIs & Services › Credentials và tạo một OAuth client ID loại Web application. Thêm URI chuyển hướng vào Authorized redirect URIs, rồi sao chép client ID và secret (Google Cloud: setting up OAuth 2.0, kiểm tra tháng 10/2026).

    ReputeCast dùng OpenID Connect với https://accounts.google.com và chỉ chấp nhận email mà Google đánh dấu là đã xác minh.

  3. Trong hộp thoại của ReputeCast, dán client ID và client secret, rồi lưu. Secret được mã hóa và chỉ có thể thay, không bao giờ đọc lại được.

  4. Bật công tắc của nhà cung cấp và chọn Lưu chính sách. Không thể bật một nhà cung cấp chưa có client ID và secret.

  • Google và GitHub: khi nhà cung cấp xác nhận một email thuộc về một tài khoản đã có, lần đăng nhập đầu tiên sẽ liên kết hai tài khoản và đăng nhập cho người đó.
  • Microsoft: Microsoft không xác minh email mà họ gửi, nên ReputeCast không bao giờ liên kết theo email. Mọi người liên kết qua liên kết lời mời hoặc trong Tài khoản và bảo mật, rồi Đăng nhập đã liên kết bằng Liên kết.
  • Lời mời: trang lời mời hiển thị các nhà cung cấp đang bật; email từ nhà cung cấp phải khớp với địa chỉ được mời.
  • Bất kỳ ai cũng có thể hủy liên kết một nhà cung cấp trong Đăng nhập đã liên kết, trừ khi đó là cách đăng nhập duy nhất của họ.

Trên các tên miền bắt buộc SSO, đăng nhập bằng tài khoản mạng xã hội bị tắt với mọi người trừ Chủ sở hữu có tài khoản khẩn cấp, và người dùng được chuyển sang nhà cung cấp danh tính.

Kiểm tra vị trí thư có thể đọc hộp thư thử Gmail và Microsoft 365 qua chính các app Google và Microsoft này, kể cả khi công tắc đăng nhập của chúng đang tắt. Hãy thêm URI chuyển hướng thứ hai, <public URL>/api/v1/placement/oauth/callback, và quyền truy cập thư mà trang kiểm tra vị trí thư yêu cầu: scope https://mail.google.com/ với Google, quyền Microsoft Graph dạng delegated Mail.ReadWrite với Microsoft.

  • Đăng xuất. Trang đăng nhập hiển thị nút của nhà cung cấp bên dưới “hoặc tiếp tục với”.
  • Đăng nhập bằng nút đó, rồi mở Tài khoản và bảo mật, rồi Đăng nhập đã liên kết: nhà cung cấp hiển thị “Đã liên kết: …”.
  • “Không có tài khoản cho …”: người đó chưa có tài khoản ReputeCast. Hãy mời họ trước; đăng nhập bằng tài khoản mạng xã hội không bao giờ tạo tài khoản.
  • Đăng nhập bằng Microsoft không tìm thấy tài khoản: hãy liên kết Microsoft trước, từ lời mời hoặc từ Đăng nhập đã liên kết.
  • “Đăng nhập bằng GitHub chỉ dành cho thành viên của tổ chức …”: người đó không phải thành viên đang hoạt động của tổ chức đã đặt trong ReputeCast.
  • “…Một chủ sở hữu của … phải phê duyệt ứng dụng OAuth của ReputeCast.”: tổ chức hạn chế OAuth app của bên thứ ba. Một owner của tổ chức phê duyệt app trong GitHub.
  • “Tài khoản GitHub của bạn không có email chính đã xác minh.”: người đó cần xác minh email chính của mình trong GitHub.
  • Nhà cung cấp báo URI chuyển hướng không khớp: URL công khai đã thay đổi, hoặc URI bị gõ sai. Hãy sao chép lại từ hộp thoại.