Kết nối nhà cung cấp OpenID Connect
Hãy dùng hướng dẫn này khi nhà cung cấp danh tính của bạn nói OpenID Connect thay vì SAML. Bất kỳ issuer đạt chứng nhận OIDC nào đều dùng được — Pocket ID, Keycloak, Auth0, Zitadel, Google Workspace và nhiều nhà cung cấp tương tự khác đều theo cùng các bước; chỉ khác ở nơi nhà cung cấp của bạn hiển thị các giá trị đó.
Điều kiện tiên quyết
Phần tiêu đề “Điều kiện tiên quyết”- một nhà cung cấp OIDC nơi bạn có thể tạo client — hãy ghi lại client ID
và URL issuer của nó (địa chỉ gốc mà tài liệu
.well-known/openid-configurationnằm bên dưới), cùng client secret khi client thuộc loại confidential (client PKCE công khai thì không có), - một máy chủ Control Center mà bạn quản trị (chủ sở hữu máy chủ).
Các bước
Phần tiêu đề “Các bước”- Mở Cài đặt → Máy chủ → Đăng nhập một lần và chuyển sang OpenID Connect.
- Điền URL issuer, Client ID và Client secret (tùy chọn) khi nhà cung cấp có cấp một secret. Control Center tự khám phá các endpoint từ tài liệu discovery chuẩn của issuer — không cần cấu hình riêng cho từng nhà cung cấp.
- Tại nhà cung cấp, đăng ký redirect
https://<your-server>/oidc/callbackcho client đó. - Nếu nhóm của bạn nằm dưới một claim khác
groups, hãy đặt tên Claim nhóm; ánh xạ nhóm sang vai trò nếu bạn muốn (SSO không bao giờ có thể cấp vai trò chủ sở hữu). - Chọn chính sách thành viên (tự động thêm vào mọi không gian làm việc, hoặc yêu cầu lời mời cho từng không gian làm việc), bật Dùng OpenID Connect để đăng nhập và nhấn Lưu kết nối.
- Nhấn Kiểm tra kết nối — máy chủ tải tài liệu discovery của issuer và xác nhận các endpoint của nó, nên một thông báo nổi màu xanh nghĩa là mọi thứ, trừ vòng khứ hồi qua trình duyệt, đều hoạt động. Để kiểm tra cả đăng ký client, hãy dùng công cụ kiểm tra bên dưới.
- Hãy đăng nhập thử: màn hình kết nối trên web hiển thị Đăng nhập bằng
OpenID Connect, hoặc mở trực tiếp
https://<your-server>/oidc/login.
Các claim (email, tên, nhóm) được máy chủ của bạn đọc từ token endpoint của
issuer qua TLS — trình duyệt không bao giờ cung cấp chúng, nên không có việc xác
minh chữ ký JWT cục bộ nào. Client phải được phép yêu cầu scope
openid profile email, đúng những gì Control Center yêu cầu.
Vì kênh TLS đó là thứ duy nhất xác thực các claim, URL issuer phải là https —
một issuer dùng văn bản thuần sẽ cho phép bất kỳ kẻ tấn công trên đường truyền
nào giả mạo danh tính hàng loạt. http chỉ được chấp nhận cho issuer loopback
(localhost, 127.0.0.1, ::1) và chỉ dành cho phát triển cục bộ.
Kiểm tra cấu hình của bạn ngay trên trang này
Phần tiêu đề “Kiểm tra cấu hình của bạn ngay trên trang này”Công cụ kiểm tra bên dưới chạy trong trình duyệt của bạn. Nó tải trực tiếp tài liệu discovery của issuer, nên trang web này không bao giờ thấy tài liệu đó, rồi áp dụng các quy tắc của máy chủ: một issuer https khớp với tài liệu, các endpoint nằm trên origin của chính issuer, PKCE S256 và phương thức xác thực token mà loại client của bạn cần. Với một client ID và địa chỉ máy chủ, nó có thể mở một lần đăng nhập thử để cho biết client cùng redirect URI của nó đã được đăng ký hay chưa. Nó không bao giờ hỏi client secret.
Runs in your browserYour browser fetches the discovery document straight from your issuer. Add a server address and it also asks that server which sign-in methods it offers. This site never receives what you type.
Test sign-in at your provider
- Your provider's sign-in or consent page: the client ID and redirect URI are registered. You can close the tab.
- An error at your provider: it names what to fix, usually a redirect URI that is not registered or an unknown client ID.
- Your server's "Sign-in failed" page: also a pass. The provider accepted the request and sent you back; your server refuses it only because this page started the sign-in, not your server.