Professional Documents
Culture Documents
• Kerberos là một dịch vụ chứng thực được thiết kế để sử dụng trong môi trường phân
tán.
• Kerberos sử dụng một dịch vụ chứng thực từ một bên tin cậy thứ ba cho phép các client
và các server thiết lập mối liên lạc chứng thực.
KERBEROS
Kerberos1 là một dịch vụ chứng thực được phát triển như một bộ phận của dự án Athena tại
MIT. Mục tiêu mà Kerberos quan tâm là: giả thiết về một môi trường phân tán mở, trong đó, người
dùng tại các trạm làm việc muốn truy xuất đến các dịch vụ tại các server phân tán trong mạng. Chúng
ta mong muốn các server có thể hạn chế các truy xuất để bảo mật và có khả năng chứng thực các yêu
cầu dịch vụ. Trong môi trường này, một trạm làm việc không thể được coi là tin cậy để nhận diện
đúng người dùng nó. Cụ thể, có ba nguy cơ sau đây:
• Một người dùng có thể truy xuất đến một trạm làm việc và thủ vai một người dùng khác
trên trạm làm việc đó.
• Một người dùng có thể thay địa chỉ mạng của trạm làm việc để các yêu cầu gửi từ trạm
này xuất hiện như nó đến từ một trạm khác.
• Một người dùng có thể nghe/xem lén các thông điệp qua lại và dùng tấn công nhại để
truy xuất server hoặc phá hoại các hoạt động mạng.
Trong bất cứ trường hợp nào vừa nêu, một người dùng giả mạo có thể đoạt được quyền truy
xuất dịch vụ và dữ liệu. Thay vì xây dựng một loạt các dịch vụ chứng thực cho mỗi server, Kerberos
hỗ trợ một server chứng thực trung tâm với chức năng chứng thực người dùng đến server và server
đến người dùng. Không như các hình thức chứng thực khác, Kerbero thực sự dựa trên mã hóa đối
xứng, không sử dụng mã hóa khoá-công-khai.
Hai phiên bản Kerberos được sử dụng phổ biến. Version 4 [MILL88, STEI88] đến nay vẫn
còn sử dụng. Version 5 [KOHL94] sửa chữa một số khiếm khuyết an ninh của phiên bản 4 và được
đề nghị là một chuẩn Internet (Internet Standard RFC 1510)2.
Chúng ta bắt đầu mục này bằng một nghiên cứu ngắn gọn về động lực của phương pháp
Kerberos. Sau đó, do sự phức tạp của Kerberos, cách tốt nhất để bắt đầu với một mô tả về giao thức
chứng thực được sử dụng trong phiên bản Kerberos 4, nó cho chúng ta thấy bản chất thực sự trong
chiên lược Kerberos mà không cần phải xem xét các chi tiết đòi hỏi xử lý các nguy cơ an ninh tinh
vi. Cuối cùng, chúng ta nghiên cứu phiên bản Kerberos 5.
1
Trong thần thoại Hy Lạp, Kerberos là một loại chó nhiều đầu, thường là ba, với một cái đuôi rắn giữ lối
vào đền Hades. (Dictionary of Subjects and Symbols in Art, by James Hall, Harper & Row, 1979). Cũng như chó
Kerberos có ba đầu, mô hình Kerberos hiện đại từng có ý định bao gồm ba thành phần để bảo vệ một cổng mạng:
chứng thực, theo dõi và kiểm định. Nhưng hai “đầu” sau chưa bao giờ được thực hiện.
2
Các phiên bản từ 1 đến 3 là các phiên bản phát triển nội bộ. Version 4 là "original" Kerberos
Nếu một tập hợp người dùng được hỗ trợ bởi các máy tính cá nhân không nối mạng, thì các
tập tin và tài nguyên của người dùng có thể được bảo vệ bằng các giải pháp an ninh vật lý. Khi
những người dùng này được phục vụ bởi một hệ thống trung tâm chia xẻ thời gian, hệ điều hành nhất
thiết phải thi hành an ninh. Hệ điều hành chia xẻ thời gian có thể bắt buộc phải thi hành chính sách
điều khiển truy xuất dựa trên nhận dạng người dùng và sử dụng thủ tục nhận dạng.
Ngày nay, những kịch bản nêu trên ngày càng hiếm. Phổ biến hơn là một kiến trúc phân tán
gồm các trạm làm việc của người dùng (client) và các server phân tán hoặc trung tâm. Trong môi
trường này, có thể tồn tại ba phương pháp an ninh:
1. Dựa vào từng trạm làm việc để bảo đảm nhận dạng riêng người dùng của nó và dựa trên
mỗi server để thi hành một chính sách bảo mật dựa trên nhân dạng của người dùng (ID).
2. Đòi hỏi các hệ thống client phải tự chứng thực chúng với các server, mà sự tin cậy của
chính hệ thống client liên quan đến nhận dạng của người dùng.
3. Đòi hỏi người dùng chứng minh nhận dạng của họ mỗi khi đòi hỏi truy cập một dịch vụ.
Cũng đòi hỏi rằng các server phải chứng thực với các client.
Trong một môi trường nhỏ, khép kín mà các hệ thống đều thuộc một tổ chức, phương pháp
đầu tiên và có lẽ cả phương pháp thứ hai cũng thỏa mãn. Nhưng trong một môi trường mở, là hệ
thống mạng kết nối đến các máy khác thì phương pháp thứ ba là cần thiết để bảo vệ thông tin người
dùng và quản lý tài nguyên tại server. Kerberos hỗ trợ phương pháp thứ ba này. Các Kerberos giả
thiết về một kiến trúc client/server và tổ chức một hay nhiều server Kerbero để đưa ra dịch vụ chứng
thực.
Công bố đầu tiên về Kerberos [STEI88] liệt kê các yêu cầu kỹ thuật sau đây:
• Bảo mật: Kẻ xem trộm mạng không thể thu được thông tin cần thiết để thủ vai một
người dùng. Tổng quát hơn, Kerberos cần đủ mạnh để kẻ tấn công không tìm được điểm
yếu.
• Tin cậy: Với tất cả các dịch vụ dựa vào Kerberos để điều khiển truy xuất, thiếu hiệu lực
của dịch vụ Kerberos có nghĩa là thiếu đi tính sẵn dùng của dịch vụ. Do đó, Kerberos cần
thực sự tin cậy và bao hàm một kiến trúc server phân tán với một server làm nhiệm vụ dự
phòng cho server khác.
• Tính dễ dùng: Rất lý tưởng nếu người dùng không nhận biết được rằng thủ tục chứng
thực được thi hành, không nhiều hơn một đòi hỏi nhập một mật khẩu.
• Tính mở rộng: Hệ thống cần có khả năng hỗ trợ một số lớn các client và server. Điều
này đề nghị một kiến trúc module và phân tán.
Để thực hiện được các yêu cầu kỹ thuật nêu trên, Kerberos được xây dựng làm một bên thứ
ba tin cậy thi hành dịch vụ chứng thực dựa trên giao thức của Needham và Schroeder [NEED78], đã
thảo luận trong Chương 7. Sự tin cậy diễn ra khi các client và server thi hành chứng thực lẫn nhau
một cách gián tiếp. Giả thiết giao thức Kerberos được thiết kế hoàn hảo thì dịch vụ chứng thực là an
toàn nếu server Kerberos an toàn.
14.1.2 Kerberos Version 4
Phiên bản 4 của Kerberos sử dụng DES, trong một giao thức khá tỷ mỷ để có được dịch vụ
chứng thực. Xem xét toàn bộ giao thức, rất khó nhận thấy sự cần thiết của rất nhiều thành phần được
chứa trong đó. Vì thế, chúng ta chấp nhận một chiến lược được sử dụng bởi Bill Bryant trong dự án
Athena [BRYA88] và xây dựng nên một giao thức đầy đủ bằng cách trước hết tìm tới một số đối
thoại với các giả thuyết. Lần lượt từng đoạn đối thoại liên tiếp tăng thêm sự phức tạp để cung cấp an
ninh cho đối thoại trước đó.
Sau khi khảo sát giao thức, chúng ta nghiên cứu các khía cạnh trong phiên bản 4.
Bảng 14.1a minh họa kỹ thuật phân phối khóa phiên. Như trước, client gửi thông điệp đến
AS để yêu cầu được truy xuất đến TGS. AS đáp lại bằng một thông điệp chứa ticket được mã hóa với
một khóa được lấy ra từ mật khẩu của người dùng (Kc). Thông điệp mã hóa này cũng chứa một bản
sao khóa phiên, Kc,tgs, mà các chỉ số dưới biểu thị rằng đây là khóa phiên cho C và TGS. Vì khóa
phiên này nằm bên trong thông điệp được mã hóa bằng Kc, chỉ client của người dùng mới đọc được.
Cũng khóa phiên đó được gói trong ticket và chỉ đọc được bởi TGS. Do đó, khóa phiên đã được
chuyển giao an toàn cho cả C và TGS.
Lưu ý về một số thông tin thêm vào cho pha đầu tiên của hội thoại. Thông điệp (1) gồm một
timestamp để AS biết được thông điệp là đúng lúc. Thông điệp (2) bao gồm một vài phần tử của
ticket dưới dạng C có thể đọc được. Nó cho phép C xác nhận rằng ticket này dành cho TGS và nắm
được thời gian hết hạn.
Được trang bị ticket và khóa phiên, C sẵn sàng tiếp cận TGS. Như trước, C gửi TGS một
thông điệp chứa ticket và ID của dịch vụ (thông điệp 3). Thêm nữa, C truyền thẻ chứng thực chứa ID
và địa chỉ người dùng client C với một timestamp. Không như ticket, dùng lại được, thẻ chứng thực
chỉ dùng một lần và có thời hạn sử dụng rất ngắn. TGS giải mã ticket bằng khóa đã chia xẻ với AS.
Ticket này biểu thị rằng C đã được hỗ trợ khóa phiên K c,tgs. Về bản chất, ticket nói rằng: “Người sử
dụng Kc,tgs phải là C”. TGS sử dụng khóa phiên giải mã thẻ chứng thực rồi kiểm tra tên và địa chỉ
trong thẻ với ticket cùng với đối chiếu địa chỉ mạng của thông điệp gửi đến. Nếu tất cả phù hợp thì
TGS được bảo đảm về người gửi ticket cũng chính là người sở hữu nó. Bản chất, thẻ chứng thực nói
“Vào thời điểm TS3, tôi sẽ sử dụng Kc,tgs”. Lưu ý rằng ticket không hề chứng minh nhận dạng của
người sử dụng nào nhưng là một cách để bàn giao mật khóa an toàn. Nó là thẻ chứng thực để chứng
minh nhận dạng client. Vì thẻ chứng thực chỉ sử dụng một lần và có thời hạn rất ngắn nên nguy cơ bị
lấy cắp cả ticket và thẻ chứng thực nhằm sử dụng sau đó đã được giải quyết.
Sự trả lời từ TGS, thông điệp (4), cùng dạng với thông điệp (2). Thông điệp được mã hóa
bằng khóa phiên được chia xẻ giữa TGS và C và bao hàm một khóa phiên nhằm chia xẻ giữa C và
server V, ID của V và timestamp cho ticket. Ticket cũng chứa cùng khóa phiên.
C bây giờ có thể sử dụng lại ticket dịch vụ vào V. Khi C trình ticket trong thông điệp (5), nó
cũng gửi kèm cả thẻ chứng thực. Server giải mã ticket, lấy khóa phiên và giải mã thẻ chứng thực.
Nếu đòi hỏi chứng thực lẫn nhau, server sẽ đáp lại thông điệp (6), trong đó gồm giá trị
timestamp trong thẻ chứng thực, được tăng lên 1 và được mã hóa bằng khóa phiên. C giải mã thông
điệp lấy timestamp đã tăng. Vì thông điệp được mã hóa bằng khóa phiên, C chắc chắn rằng đó không
phải là nhại một thông điệp cũ.
Sau cùng, client và server chia xẻ một mật khóa. Khóa này có thể được sử dụng trong các
thông điệp sau đó giữa đôi bên hoặc để trao đổi một khóa phiên mới.
Bảng 14.2 tóm tắt về các thành phần sử dụng trong giao thức Kerberos và hình 14.1 trình bày
tổng quan hoạt động
Bảng 14.2 Giải thích các phần tử trong giao thức Kerberos V4
IDC Cho AS biết nhận dạng của người dùng trên client C.
IDtgs Cho AS biết người dùng muốn truy xuất TGS.
TS1 Cho phép AS kiểm tra đồng hồ tại client đã được đồng bộ với AS.
Kc Sự mã hóa dựa trên mật khẩu của người dùng, cho phép AS và client.
kiểm tra mật khẩu và bảo vệ nội dung thông điệp (2).
Kc,tgs Bản sao của khóa phiên mà client truy xuất được do AS để cấp quyền
trao đổi giữa client và TGS mà không yêu cầu chúng phải chia xẻ một
khóa lâu dài.
IDtgs Xác nhận rằng ticket này dành cho TGS.
TS2 Thông báo cho người dùng về thời điểm mà ticket được cấp.
Lifetime2 Thông báo cho client về thời hạn sử dụng của ticket.
Tickettgs Ticket được sử dụng bởi client để truy xuất TGS.
IDV Cho TGS biết người dùng yêu cầu truy xuất server V.
Tickettgs Bảo đảm với AS rằng người dùng này đã được chứng thực bởi AS.
Authenticatorc Sinh ra bởi client để xác nhận tính hợp lệ của ticket.
Kc,tgs Khóa chia xẻ bởi C và TGS bảo vệ nội dung thông điệp (4).
Kc,v Bản sao khóa phiên mà client truy xuất được do TGS tạo ra để cấp phép
trao đổi an toàn giữa client và server mà không đòi hỏi chúng phải chia
xẻ khóa lâu dài.
IDv Xác nhận ticket dành cho server V.
TS4 Báo cho client thời điểm cấp ticket.
Ticketv Ticket cho client truy xuất server V.
Tickettgs Dùng lại được, tránh cho người dùng phải nhập lại mật khẩu.
Ktgs Ticket được mã hóa với khóa này để chống quấy rối, chia xẻ bởi AS và
TGS.
Kc,tgs Bản sao của khóa phiên truy xuất được bởi TGS dùng để mã hóa thẻ
chứng thực, liên quan tới chứng thực ticket.
IDC Biểu thị quyền sở hữu chính đáng đối với ticket.
ADC Chống lại việc sử dụng ticket từ một trạm làm việc khác với trạm yêu cầu
cấp ticket.
IDtgs Bảo đảm cho server rằng đã giải mã ticket đúng đắn.
TS2 Báo cho TGS về thời điểm ticket được cấp.
Lifetime2 Chống tấn công nhại sau khi ticket hết hạn.
Authenticatorc Bảo đảm cho TGS rằng ticket đệ trình đúng là ticket được cấp cho client
với thời hạn rất ngắn để chống tấn công nhại.
Kc,tgs Thẻ chứng thực được mã hóa với khóa này, được chia xẻ bởi client và
TGS, để chống quấy rối.
IDc Phải phù hợp với ID trong ticket để chứng thực ticket.
ADc Phải phù hợp với địa chỉ trong ticket để chứng thực ticket.
TS3 Báo cho TGS về thời điểm sinh ra thẻ chứng thực này.
Ticketv Bảo đảm với server rằng người dùng này đã được chứng thực bởi AS.
Authenticatorc Được sinh ra bởi client để xác nhận tính hợp lệ của ticket.
Một môi trường như thế được gọi là miền Kerberos (realm). Khái niệm về realm có thể trình
bày như sau. Một miền Kerberos là một tập nút được quản lý, và cùng chia xẻ một cơ sở dữ liệu
Kerberos. Cơ sở dữ liệu Kerberos được lưu trữ trong hệ thống máy tính master Kerberos, nó được
bảo vệ trong một hệ thống an ninh gồm con người và các phương tiện cần thiết. Cũng có thể các bản
sao chỉ đọc của cơ sở dữ liệu Kerberos được lưu trữ trong các hệ thống máy tính Kerberos khác. Tuy
nhiên, tất cả các thay đổi nội dung cơ sở dữ liệu đều phải tạo trực tiếp trên máy master. Thay đổi
hoặc truy xuất nội dung cơ sở dữ liệu Kerberos đòi hỏi phải có mật khẩu master Kerberos. Một khái
niệm có liên quan mật thiết đó là chủ Kerberos, là một dịch vụ hay người dùng được phép biết nội
dung máy Kerberos. Mỗi chủ Kerberos đều phải có tên. Tên chủ Kerberos gồm ba phần: tên người
dùng hoặc dịch vụ, một tên tham chiếu và một tên realm.
Các mạng theo mô hình client/server của các tổ chức hành chính khác nhau thường thiết lập
các miền riêng. Nghĩa là, các tổ chức này thường không tự tuân thủ các nguyên tắc hành chính để
người dùng và các server của họ phải đăng ký với một server Kerberos nằm ở đâu đó. Tuy nhiên,
người dùng trong một miền có thể cần được truy xuất tới các server miền khác, hoặc là các server
mong được cung cấp dịch vụ cho người dùng không chỉ thuộc miền nó quản lý. Điều đó tất yếu dẫn
đến sự cần thiết phải chứng thực.
Kerberos cung cấp một cơ chế cho phép chứng thực liên miền. Để hai realm có thể cung cấp
chứng thực liên miền, một đòi hỏi thứ ba được thêm vào:
3. Server Kerberos trong mỗi realm tham gia liên miền cần phải chia xẻ một mật khoá với
server thuộc realm khác. Hai server Kerberos phải đăng ký với nhau.
Hình thức này đòi hỏi rằng server Kerberos thuộc một miền phải tin tưởng server Kerberos
của miền kia trong qua trình chứng thực người dùng. Hơn nữa, các server tham gia của miền thứ hai
cũng phải tin tưởng server Kerberos server thuộc realm thứ nhất.
Với các quy tắc nền móng này, ta có thể mô tả cơ chế như sau (hình 14.2): Một người dùng
muốn truy cập dịch vụ trong một server thuộc realm khác cần đệ trình một ticket cho server đó.
Người dùng tuân theo thủ tục thường lệ để có quyền truy xuất tới TGS địa phương và xin ticket cấp-
ticket cho server phía xa để từ đó xin ticket cấp-dịch vụ của server trong vùng của TGS xa.
Hình 14.2 Yêu cầu truy xuất dịch vụ từ một Realm khác
Chi tiết trao đổi được minh họa trong hình 14.2 như sau (hãy so sánh với bảng 14.1):
(1) C → AS: IDc||IDtgs||TS1
(2) AS → C: E(Kc, [Kc,tgs||IDtgs||TS2||Lifetime2||Tickettgs])
(3) C → TGS: IDtgsrem||Tickettgs||Authenticatorc
(4) TGS → C: E(Kc,tgs, [Kc,tgsrem||IDtgsrem||TS4||Tickettgsrem])
(5) C → TGSrem: IDvrem||Tickettgsrem||Authenticatorc
(6) TGSrem → C: E(Kc,tgsrem, [Kc,vrem||IDvrem||TS6||Ticketvrem])
(7) C →Vrem: Ticketvrem||Authenticatorc
Ticket trình trước server xa (V rem) thể hiện realm đã chứng thực cho người dùng. Server xa
tuỳ ý chọn có hoặc không phục vụ yêu cầu tữ xa này.
Một vấn đề đặt ra cho hình thức vừa rồi là nó không thể mở rộng ra nhiều realm. Nếu có N
realm, thì cần phải có N(N − 1)/2 cuộc trao đổi khoá mật khoá, cho nên mỗi server Kerberos của
realm cần phải liên kết được với tất cả server Kerberos của N – 1 realm khác.
(1) C → AS Options||IDc||Realmc||IDtgs||Times||Nonce1
(5) C → V Options||Ticketv||Authenticatorc
(6) V → C EKc,v[TS2||Subkey||Seq#]
Ticketv = E(Kv, [Flags||Kc,v||Realmc||IDC||ADC||Times])
Authenticatorc = E(Kc,v,[IDC||Realmc||TS2||Subkey||Seq#])
• Subkey: Lựa chọn của client về một khoá mã hoá dùng để bảo vệ trong phiên làm việc.
Nếu bỏ qua trường này, thì khoá phiên lấy từ ticket (Kc,v) được sử dụng.
• Sequence number: Một trường tuỳ ý chỉ ra số thứ tự bắt đầu dùng bởi server đối với các
thông điệp gửi tới client trong phiên này. Các thông điệp được đánh số tuần tự để tránh
tấn công nhại.
Nếu đòi hỏi chứng thực lẫn nhau, thì server đáp trả bằng thông điệp (6). Thông điệp này bao
gồm nhãn thời gian lấy từ mã chứng thực. Lưu ý rằng trong phiên bản 4, nhãn thời gian được tăng
lên 1. Điều này không cần thiết trong phiên bản 5 bởi vì bản chất tự nhiên của dạng thức các thông
điệp không cho phép đối phương tạo được thông điệp (6) mà không nắm được khoá mã hoá. Trường
khoá con subkey, nếu có mặt, thì nó sẽ có hiệu lực thay cho trường khoá con trong thông điệp (5),
nếu như trường này có mặt. Trường số thứ tự tuỳ chọn chỉ ra số thứ tự bắt đầu dùng bởi client.
INITIAL Ticket sinh từ giao thức AS, nó không dựa vào một ticket-cấp ticket.
PRE-AUTHENT Trong chứng thực ban đầu, client được chứng thực bởi KDC trước khi
được cấp ticket.
HW-AUTHENT Giao thức dùng trong chứng thực ban đầu dùng phần cứng mong được sử
dụng độc quyền chỉ bởi tên client đã chỉ ra.
RENEWABLE Cho TGS biết rằng ticket này có thể dùng để xin thay thế một ticket sẽ hết
hạn vào một ngày sau.
MAY-POSTDATE Cho TGS biết rằng có thể một ticket được phát ra có ngày tháng chậm hơn
(postdated) dựa trên ticket-cấp ticket này.
POSTDATED Biểu thị rằng ticket này đã được đề ngày tháng muộn; server cuối có thể
phải xác minh trường thời gian chứng thực authtime để biết chứng thực ban
đầu đã xảy ra khi nào.
INVALID Ticket này chưa được hợp thức và nó phải được KDC hợp thức hoá trước
khi dùng.
PROXIABLE Cho TGS biết rằng một ticket-cấp dịch vụ mới mang địa chỉ mạng khác có
thể đã được cấp dựa trên ticket này.
FORWARDABLE Cho TGS biết rằng một ticket-cấp dịnh vụ mới với một địa chỉ mạng khác
có thể đã được cấp dựa trên ticket-cấp ticket này.
FORWARDED Biểu thị rằng ticket này hoặc đã được chuyển tiếp hoặc được phát ra dựa
trên sự chứng thực đòi hỏi một ticket-cấp ticket chuyển tiếp.
Cờ PRE-AUTHENT nếu được lập, nó báo hiệu rằng khi AS nhận được yêu cầu ban đầu,
thông điệp (1), nó chứng thực cho client trước khi cấp một ticket. Dạng thức của việc chứng thực
trước này chưa được chỉ ra cụ thể. Ví dụ, việc thi hành chứng thực trước trong phiên bản 5 ở MIT
ngầm định là nhãn thời gian được mã hoá. Khi một người dùng muốn lấy ticket, nó phải gửi tới AS
một khối chứng thực trước, nó chứa số ngẫu nhiên, một số hiệu phiên bản và một nhãn thời gian,
được mã hoá bằng khoá lấy từ mật khẩu người dùng. AS giải mã khối này nhưng sẽ không gửi lại
một ticket-cấp ticket trừ khi nhãn thời gian trong khối chứng thực trước vẫn còn trong phạm vi khống
chế được (khoảng thời gian do sai lệch đồng hồ và các mức trễ của mạng). Một khả năng khác là
dùng một thẻ thông minh tạo ra liên tiếp các thay đổi với mật khẩu đã bao hàm trong các thông điệp
chứng thực trước. Các mật khẩu được sinh ra bởi các thẻ này có thể dựa vào mật khẩu của người
dùng nhưng được thẻ biến đổi đi sao cho trở thành các mật khẩu bất kỳ. Cách này chống lại một kiếu
tấn công dựa vào việc đoán các mật khẩu dễ. Nếu một thẻ thông minh hay một thiết bị như thế được
sử dụng, nó sẽ được báo bằng cờ HW-AUTHENT.
Khi một ticket có thời gian sống dài, có khả năng bị lấy trộm và dùng trái phép bởi một kẻ
nào đó. Nếu thời gian sống ngắn nguy cơ sẽ ít hơn nhưng đặt gánh nặng cho tác vụ xin và cấp phát
các ticket mới. Đối với một ticket-cấp ticket, client có thể phải lưu trữ mật khoá người dùng mà đó rõ
ràng là một khả năng rủi ro, hoặc phải liên tục đòi mật khẩu người dùng. Cách phù hợp hơn trong
việc sử dụng các ticket là chúng có thể được phép thay mới hoặc gia hạn. Một ticket được lập cờ
RENEWABLE bao gồm hai loại thời gian hết hạn: một dùng để khẳng định thời gian hết hạn ticket
này và thời gian kia là thời hạn cuối cùng của các ticket gia hạn hoặc xin mới dựa trên ticket này.
Một client muốn gia hạn thì trình nó cho TGS để xin một thời hạn mới. Nếu thời hạn mới nằm trong
khoảng thời gian hạn chế cuối cùng thì TGS có thể cấp cho một ticket mới với thời hạn phiên làm
việc mới cùng một giá trị thời hạn sau cùng muộn hơn nữa. Ưu điểm của cơ chế này là ở chỗ TGS có
thể từ chối cấp một ticket nếu nó đã được báo cáo bị đánh cắp.
Client có thể yêu cầu TGS cung cấp một ticket-cấp ticket mang cờ MAYPOSTDATE. Sau đó
client này có thể dùng ticket để xin ticket có cờ POSTDATED và INVALID từ TGS. Rồi tiếp nữa,
client có thể đệ trình ticket có cờ POSTDATED để kích hoạt hiệu lực. Hình thức này rất có ích trong
khi thi hành một tập tin bó lệnh (batch) trong một thời gian dài của một server mà nó thường xuyên,
định kỳ xin ticket. Client có thể xin nhiều ticket cho phiên làm việc hiện tại mỗi lần xin, các ticket
này có các giá trị thời hạn dài dần ra. Ban đầu, trừ ticket đầu tiên, các ticket cùng xin khác đều chưa
được hợp thức hoá. Khi việc thi hành đi đến điểm giới hạn thời gian đầu tiên, client dùng ticket có
thời hạn hợp lệ phù hợp để tiếp tục công việc. Bằng phương pháp này, client không phải liên tục
dùng ticket-cấp ticket để xin ticket-cấp dịch vụ.
Trong phiên bản 5 một server có khả năng đóng vai trò như một proxy thay mặt client với
đầy đủ tính tin cậy và quyền hợp pháp của client để yêu cầu dịch vụ từ một server khác. Nếu một
client muốn được dùng cơ chế này, nó yêu cầu một ticket-cấp ticket bằng việc lập cờ PROXIABLE.
Khi ticket này được trình trước TGS, TGS cho phép cấp một ticket-cấp dịch vụ với một địa chỉ mạng
khác mang cờ PROXY. Một ứng dụng nếu nhận được một ticket như thế có thể tự nó quyết định
chấp nhận hay đòi hỏi thêm chứng thực (Tham khảo [NEUM93b]).
Khái niệm proxy là một trường hợp đặc biệt hữu ích của thủ tục chuyển tiếp. Nếu một ticket
được lập cờ FORWARDABLE, một TGS có thể cấp một ticket-cấp ticket mang một địa chỉ mạng
khác và cờ FORWARDED được lập. Ticket này sau đó được trình trước TGS xa. Tính năng này cho
phép một client có thể truy xuất tới một server thuộc miền khác mà không cần đòi hỏi mỗi server
Kerberos phải duy trì một mật khoá tương ứng với mỗi server Kerberos của mọi miền. Ví dụ, các
miền có thể được xây dựng theo cấu trúc trình tự của một đồ thị hình cây. Khi đó, một client có thể
theo các nút chung để chứng thực lên và lại lần lượt xuống theo nhánh dưới khác của đồ thị để đến
được realm đích. Mỗi bước lên hay xuống như thế đều cần chuyển tiếp một ticket-cấp ticket tới TGS
tiếp theo trên đường đi.