Type
Однооктетное поле, определяющее тип атрибута. Актуальные значения поля типа для атрибутов RADIUS вы можете узнать из последнего варианта документа Assigned Numbers [6]. Значения 192-223 предназначены для экспериментальных целей, значения 224-240 зарезервированы для разработчиков (специфические для реализации типы), а значения 241-255 являются резервными и не должны использоваться.
Сервер RADIUS может игнорировать атрибуты неизвестных типов.
Клиент RADIUS может игнорировать атрибуты неизвестных типов.
Определенные в данной спецификации атрибуты перечислены в таблице 1:
Тип Атрибут Тип Атрибут Тип Атрибут 1 User-Name 16 Login-TCP-Port 31 Calling-Station-Id 2 User-Password 17 (не используется) 32 NAS-Identifier 3 CHAP-Password 18 Reply-Message 33 Proxy-State 4 NAS-IP-Address 19 Callback-Number 34 Login-LAT-Service 5 NAS-Port 20 Callback-Id 35 Login-LAT-Node 6 Service-Type 21 (не используется) 36 Login-LAT-Group 7 Framed-Protocol 22 Framed-Route 37 Framed-AppleTalk-Link 8 Framed-IP-Address 23 Framed-IPX-Network 38 Framed-AppleTalk-Network 9 Framed-IP-Netmask 24 State 39 Framed-AppleTalk-Zone 10 Framed-Routing 25 Class 40-59 (зарезервированы для учета) 11 Filter-Id 26 Vendor-Specific 60 CHAP-Challenge 12 Framed-MTU 27 Session-Timeout 61 NAS-Port-Type 13 Framed-Compression 28 Idle-Timeout 62 Port-Limit 14 Login-IP-Host 29 Termination-Action 63 Login-LAT-Port 15 Login-Service 30 Called-Station-Id Length
Однооктетное поле Length указывает размер данного атрибута с учетом полей Type, Length и Value. При получении в пакете Access-Request атрибута с некорректно указанным размером следует передавать отклик Access-Reject. При получении атрибута с некорректно указанным размером в пакетах Access-Accept, Access-Reject или Access-Challenge пакет должен трактоваться как Access-Reject или отбрасываться без уведомления.
Value
Необязательное поле Value содержит значение атрибута. Формат и размер значения атрибута определяются значениями полей Type и Length.
Отметим, что ни один из типов RADIUS не использует в качестве завершения NUL-символ (hex 00). В частности, значения типа text и string в протоколе RADIUS не завершаются NUL-символом. Для каждого атрибута имеется поле размера, поэтому символы завершения не требуются. Значения типа text представляет собой последовательность символов в кодировке UTF-8 10646 [7], а значения типа string содержат 8-битовые бинарные данные. Серверы и клиенты RADIUS должны быть способны работать со строками, содержащими NUL-символы. При реализации RADIUS на основе языка C не следует использовать для обработки строк функцию strcpy().
Значение атрибута может относиться к одному из пяти поддерживаемых типов данных. Отметим, что тип text является частным случаем (подмножеством) типа string.
text
От 1 до 253 октетов, содержащих символы в кодировке UTF-8 10646 [7]. Недопустима передача текстовых атрибутов нулевой длины. В таких случаях следует просто исключить атрибут.
string
От 1 до 253 октетов, содержащих бинарные данные (значения от 0 до 255, включительно). Недопустима передача string-атрибутов нулевой длины. В таких случаях следует просто исключить атрибут.
address
32-битовое значение, первый октет является старшим.
integer
32-битовое беззнаковое целое, первый октет является старшим.
time
32-битовое беззнаковое целое (первый октет является старшим), показывающее число секунд, прошедших с 1 января 1970 г. (00:00:00 по Гринвичу — UTC). Стандартные атрибуты RADIUS не используют этот тип, но он добавлен для будущих расширений.
- RFC: 2865
- Оригинал: Remote Authentication Dial In User Service (RADIUS)
- Предыдущие версии: RFC 2058, RFC 2138
- Категория: Проект стандарта
- Дата публикации:
- Авторы: C. Rigney , S. Willens , A. Rubens , W. Simpson
- Перевод: Николай Малых
RFC 2865, Страница 15 из 49
Страница 15 из 49
2007 - 2022 © Русские переводы RFC, IETF, ISOC.