2010-02-24 26 views
17

Tôi có nên dành thời gian triển khai LDAP để xác thực trong ứng dụng web của tôi (php) không? Nó có phải là công nghệ 'chết' không?LDAP có lỗi thời không?

Nếu các lựa chọn thay thế là gì? và nếu không, tôi có thể sử dụng những nguồn tài nguyên nào? (sách, hướng dẫn)

Trả lời

23

LDAP chắc chắn không phải là công nghệ đã chết. Trong các ứng dụng web nói chung, có lẽ, nhưng chúng tôi sử dụng xác thực LDAP cho một lượng lớn các ứng dụng dựa trên mạng nội bộ của chúng tôi. Vì vậy, nếu bạn nghĩ rằng ứng dụng của bạn có thể chạy bên trong một văn phòng ở đâu đó, LDAP sẽ được đánh giá cao hơn khả năng.

Ngoài ra, LDAP làm cho một cách tốt để trừu tượng xác thực qua nhiều phương tiện khác nhau, Active Directory, Kerberos, thậm chí xác thực dựa trên SQL bình thường.

8

Chắc chắn là không chết. Cho dù bạn nên thực hiện nó trong ứng dụng của bạn phụ thuộc hoàn toàn vào bạn người dùng/cơ sở khách hàng và nhu cầu của họ là gì.

Tính nóng mới tuy nhiên là danh tính dựa trên liên kết/xác nhận quyền sở hữu. Các cách tiếp cận này cho phép bạn tách riêng hoàn toàn xác thực của mình khỏi ứng dụng. Kiểm tra OpenID (được sử dụng trên trang web này) và SAML.

+4

Lưu ý: OpenID không thay thế hoàn toàn LDAP, chỉ xác thực (không phải phần ủy quyền). OAuth cung cấp phương tiện phổ quát (đa nền tảng, phân phối) yêu cầu quyền trên tài nguyên được bảo vệ, tuy nhiên nhà cung cấp OAuth vẫn cần thực hiện logic (ACL) ủy quyền. Có thể sử dụng thư mục LDAP để lưu trữ các vai trò được liên kết với người dùng, điều này rất hữu ích. –

+0

Ngoài ra, các công cụ như Apache Directory Studio (http://directory.apache.org/studio/) giúp bạn dễ dàng quản lý các mục nhập trong Thư mục LDAP. –

0

OpenID, chẳng hạn như OAuth/OAuth2 không độc lập với LDAP. Chúng được kết nối với nhau. Máy chủ LDAP là thành phần duy nhất tồn tại mà không có OAuth và OpenID Connect. Máy chủ LDAP luôn là nguồn của người dùng và khách hàng và các thực thể khác. Máy chủ LDAP luôn được sử dụng để xác thực người dùng và cho phép họ cung cấp tài nguyên. Không thể hỗ trợ OAuth và OpenID Connect nếu không có Máy chủ LDAP. OAuth và OpenID Connect chỉ là các giao thức chứ không phải là hệ thống để quản lý người dùng.