Xác thực Kerberos, máy chủ dịch vụ và quyền truy cập vào KDC


10

Tôi có một ứng dụng web (tên máy chủ: service.domain.com) và tôi muốn sử dụng xác thực Kerberos để xác định người dùng đã đăng nhập vào miền Windows. Microsoft AD (Windows Server 2008 R2) đang cung cấp dịch vụ Kerberos.

Dịch vụ này là một ứng dụng web Java sử dụng thư viện mở rộng Spring Security Kerberos để thực hiện giao thức SPNEGO / Kerberos. Tôi đã tạo một tệp keytab trong AD có chứa một bí mật được chia sẻ đủ để xác thực vé Kerberos được gửi bởi trình duyệt máy khách bằng ứng dụng web.

Câu hỏi của tôi là, máy chủ dịch vụ (service.domain.com) cần có quyền truy cập tường lửa (TCP / UDP 88) đến KDC (kdc.domain.com) hoặc là tệp keytab đủ để máy chủ dịch vụ có thể giải mã Kerberos vé và cung cấp xác thực?


Dịch vụ không cần truy cập vào KDC trong thiết lập của bạn. Các khách hàng hoàn toàn làm.
jouell

Câu trả lời:


11

Các dịch vụ không bao giờ cần phải nói chuyện với các KDC . Nó cần một keytab do KDC tạo ra , nhưng bạn có thể sao chép bất kỳ cách nào bạn muốn. Họ không bao giờ phải nói chuyện với nhau.

Một phiên bản đơn giản hóa quá mức của những gì tôi tin rằng sẽ diễn ra ít nhiều như thế này:

Thiết lập dịch vụ

  • KDC tạo ra một keytab dịch vụ (giống như một khóa / mật khẩu bí mật nếu bạn muốn)
  • này keytab được cung cấp cho các dịch vụ một cách nào đó ( scphoặc thực hiện trên một thẻ nhớ USB nếu bạn muốn)

Khách hàng kết nối với dịch vụ

  • khách hàng yêu cầu một dịch vụ từ KDC
  • KDC tạo một dịch vụ , chứa một số thông tin chỉ có thể được giải mã bằng keytab của dịch vụ (đây là tệp nằm trên máy chủ của bạn)
  • khách hàng gửi dịch vụ của mình đến dịch vụ
  • các dịch vụ sử dụng của nó keytab để xác minh (không giao tiếp mạng cần thiết)

Cảm ơn bạn, đây là cách tôi hiểu nó từ bài viết Wikipedia của Kerberos. Câu hỏi này dường như có câu trả lời mâu thuẫn: Xác thực Kerberos cho máy chủ web
StrangeLoop

Chà, tôi không biết điều gì đã xảy ra trong câu trả lời khác đó, nhưng tôi có một máy chủ SSH rất xa thực hiện xác thực dựa trên Kerberos và chắc chắn nó không có quyền truy cập vào KDC trên mạng LAN riêng của tôi ở nhà. Có thể có điều gì đó kỳ lạ đang xảy ra với máy chủ web? Có thể, nhưng tôi rất nghi ngờ nó.
chutz
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.