Với việc hiện đại hoá cấp SSO của Apigee trong phiên bản 4.54.00, trình môi giới danh tính cơ bản yêu cầu liên kết gián tiếp (tìm kiếm và liên kết) và không còn hỗ trợ liên kết trực tiếp (đơn giản). Để duy trì các tiêu chuẩn bảo mật đặc quyền tối thiểu, SSO của Apigee hiện chuẩn hoá việc sử dụng một tài khoản dịch vụ chuyên dụng, chỉ có thể đọc để tìm kiếm thư mục.
Phần này mô tả các cơ chế mà bạn có thể sử dụng LDAP làm IDP với Apigee Edge cho đám mây riêng tư.
Cơ chế xác thực: tìm kiếm và liên kết (liên kết gián tiếp)
Khi dùng tính năng tìm kiếm và liên kết, người dùng sẽ cung cấp một RDN (chẳng hạn như tên người dùng hoặc địa chỉ email) và mật khẩu của họ. Sau đó, Apigee SSO sẽ tìm tên riêng biệt (DN) của người dùng và cố gắng liên kết. Tính năng tìm kiếm và liên kết cho phép so khớp một phần.
Sau đây là các bước trong một thao tác tìm kiếm và liên kết:
- Người dùng nhập một giá trị nhận dạng, chẳng hạn như tên người dùng hoặc địa chỉ email, cùng với mật khẩu của họ.
- SSO Apigee thực hiện tìm kiếm bằng bộ lọc LDAP và một bộ thông tin đăng nhập tài khoản dịch vụ chỉ đọc.
- Nếu có đúng một kết quả khớp, thì SSO của Apigee sẽ truy xuất DN của người dùng. Nếu không có hoặc có nhiều hơn một kết quả trùng khớp, thì SSO của Apigee sẽ từ chối người dùng.
- Sau đó, SSO của Apigee sẽ cố gắng liên kết DN của người dùng và mật khẩu được cung cấp với máy chủ LDAP.
- Máy chủ LDAP thực hiện quy trình xác thực.
- Nếu thành công, SSO của Apigee sẽ trả về mã thông báo OIDC/OAuth2 mà ứng dụng có thể đính kèm vào yêu cầu của họ đối với các dịch vụ Edge.
OpenLDAP nội bộ (cấu hình mặc định)
Nếu bạn đang sử dụng Apigee OpenLDAP được nhúng (trong đó máy chủ lưu trữ LDAP được đặt thành localhost), thì quá trình cài đặt sẽ tự động bảo mật cấu hình. Trong quá trình thiết lập, hệ thống sẽ tự động cung cấp một tài khoản dịch vụ có đặc quyền tối thiểu (cn=sso-reader) với một khoá bí mật được tạo ngẫu nhiên và quyền truy cập chỉ đọc bị hạn chế.
Thông tin đăng nhập của quản trị viên gốc OpenLDAP (cn=manager) sẽ bị loại bỏ khỏi các tệp cấu hình Apigee SSO để ngăn chặn việc lộ thông tin đăng nhập có đặc quyền cao trên đĩa.
Nếu bạn đang sử dụng OpenLDAP nội bộ, hãy chuyển sang phần Cài đặt và định cấu hình Đăng nhập một lần (SSO) của Apigee.
LDAP bên ngoài của công ty
Nếu đang kết nối dịch vụ Đăng nhập một lần (SSO) của Apigee với một thư mục LDAP bên ngoài, chẳng hạn như Active Directory của công ty, thì bạn phải cung cấp một tài khoản dịch vụ chỉ có thể đọc được cấp phép trước trong thư mục của mình trước khi định cấu hình. Apigee SSO sẽ chỉ sử dụng tài khoản này cho các thao tác tìm kiếm và liên kết.
Thuộc tính cấu hình LDAP bên ngoài
Để định cấu hình thư mục LDAP bên ngoài, hãy cung cấp thông tin chi tiết về tài khoản dịch vụ chỉ có quyền đọc trong tệp cấu hình. Tập lệnh setup-sso sẽ tự động xử lý việc chèn các mã thông báo cần thiết vào cấu hình.
Thêm các thuộc tính sau vào tệp cấu hình, ví dụ: /opt/silent.conf:
ENABLE_SSO=y SSO_EXTERNAL_LDAP=y SSO_LDAP_HOST=corp-ad.company.com SSO_LDAP_PORT=636 # Set to false for secure connection SSO_LDAP_INSECURE_SKIP_VERIFY=false # The DN and password of your pre-provisioned read-only service account SSO_LDAP_BIND_DN="cn=svc-apigee,ou=ServiceAccounts,dc=corp,dc=com" SSO_LDAP_BIND_PW="password" # The base DN for user searches SSO_LDAP_USER_BASE_DN="ou=Employees,dc=corp,dc=com" # The filter used to search for the user SSO_LDAP_USER_FILTER="(&(objectClass=user)(objectCategory=person))" # The attribute containing the user's email address SSO_LDAP_USER_EMAIL_ATTR="mail" # (Optional) The attribute containing the user's ID # SSO_LDAP_USER_ID_ATTR="sAMAccountName" # (Optional) The attribute containing the user's display name # SSO_LDAP_USER_NAME_ATTR="displayName"
Sau khi xác định các thuộc tính này, hãy chuyển sang bước Cài đặt và định cấu hình SSO của Apigee.