SASL / GSSAPI là gì?


16

Nhiều lần tôi đã gặp biểu thức SASL / GSSAPI. Tôi đã tìm kiếm Google nhiều lần, nhưng đơn giản là tôi không hiểu nó là gì và nó liên quan đến Kerberos như thế nào.

Bất cứ ai có một lời giải thích đơn giản về điều này?

Câu trả lời:


5

SASL và GSSAPI là các khung mà các nhà cung cấp xác thực khác nhau có thể được cắm vào. Những người muốn sử dụng xác thực Kerberos trong một ứng dụng hỗ trợ SASL hoặc GSSAPI chỉ cần cung cấp plugin Kerberos thích hợp, thay vì viết lại ứng dụng bằng mã dành riêng cho Kerberos.


1
Thật vậy, như tôi đã nói, "SASL. ... rằng các nhà cung cấp xác thực khác nhau có thể được cắm vào". Chúng là hai khung khác nhau mà bạn có thể cắm các nhà cung cấp xác thực khác nhau, chẳng hạn như Kerberos hoặc NTLM, vào.
DSolimano

SASL là một đặc tả kỹ thuật triển khai thường dành cho các giao thức dựa trên văn bản (như SMTP, IMAP, v.v.). GSSAPI là một định nghĩa giao diện ứng dụng cho các plugin hỗ trợ các cơ chế xác thực khác nhau. SASL có thể sử dụng GSSAPI để mở rộng cơ chế xác thực của nó.
Chris S

39

SASL là viết tắt của Lớp xác thực và bảo mật đơn giản; đó là một khung cho phép các nhà phát triển thực hiện các cơ chế xác thực khác nhau và cho phép khách hàng và máy chủ đàm phán một cơ chế chấp nhận lẫn nhau cho mỗi kết nối (thay vì mã hóa cứng hoặc định cấu hình trước chúng).

GSSAPI là viết tắt của Giao diện Chương trình Ứng dụng Dịch vụ Bảo mật Chung; nó thường được cung cấp như một trong những cơ chế mà SASL có thể sử dụng. Bản thân nó là một khuôn khổ khác để phát triển và thực hiện các cơ chế xác thực khác nhau. Các cơ chế này bao gồm Kerberos, NTLM và SPNEGO (Cơ chế đàm phán GSSAPI đơn giản và được bảo vệ): cơ chế giả GSSAPI cho phép các khách hàng tương thích GSSAPI đàm phán cơ chế GSSAPI nào họ muốn sử dụng.

Đây là một ví dụ để giúp làm cho điều này rõ ràng hơn một chút (đơn giản hóa một cách thô bạo để rõ ràng hơn):

  1. Khách hàng kết nối với máy chủ và nói: "Tôi hỗ trợ SASL! Tôi nên xác thực bản thân như thế nào?"
  2. Máy chủ nhận được kết nối và trả lời: "Tôi cũng hỗ trợ SASL và có thể sử dụng các cơ chế này, theo thứ tự ưu tiên giảm dần: GSSAPI, CRAM-MD5, PLAIN."
  3. Khách hàng trả lời: "Trong số các lựa chọn, tôi muốn sử dụng GSSAPI."
  4. Máy chủ trả lời "GSSAPI? Vốn. Tôi hỗ trợ Kerberos và NTLM."
  5. Khách hàng trả lời "Hãy sử dụng Kerberos. Đây là vé được mã hóa của tôi, v.v."

Cảm ơn rất nhiều lời giải thích rất rõ ràng
mSatyam
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.