RFC: 2865
Оригинал: Remote Authentication Dial In User Service (RADIUS)
Предыдущие версии: RFC 2058, RFC 2138
Категория: Проект стандарта
Дата публикации:
Авторы: , , ,
Перевод: Николай Малых
  • Type

    Однооктетное поле, определяющее тип атрибута. Актуальные значения поля типа для атрибутов RADIUS вы можете узнать из последнего варианта документа Assigned Numbers [6]. Значения 192-223 предназначены для экспериментальных целей, значения 224-240 зарезервированы для разработчиков (специфические для реализации типы), а значения 241-255 являются резервными и не должны использоваться.

    Сервер RADIUS может игнорировать атрибуты неизвестных типов.

    Клиент RADIUS может игнорировать атрибуты неизвестных типов.

    Определенные в данной спецификации атрибуты перечислены в таблице 1:

    ТипАтрибутТипАтрибутТипАтрибут
    1User-Name16Login-TCP-Port31Calling-Station-Id
    2User-Password17(не используется)32NAS-Identifier
    3CHAP-Password18Reply-Message33Proxy-State
    4NAS-IP-Address19Callback-Number34Login-LAT-Service
    5NAS-Port20Callback-Id35Login-LAT-Node
    6Service-Type21(не используется)36Login-LAT-Group
    7Framed-Protocol22Framed-Route37Framed-AppleTalk-Link
    8Framed-IP-Address23Framed-IPX-Network38Framed-AppleTalk-Network
    9Framed-IP-Netmask24State39Framed-AppleTalk-Zone
    10Framed-Routing25Class40-59(зарезервированы для учета)
    11Filter-Id26Vendor-Specific60CHAP-Challenge
    12Framed-MTU27Session-Timeout61NAS-Port-Type
    13Framed-Compression28Idle-Timeout62Port-Limit
    14Login-IP-Host29Termination-Action63Login-LAT-Port
    15Login-Service30Called-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 не используют этот тип, но он добавлен для будущих расширений.

2007 - 2017 © Русские переводы RFC, IETF, ISOC.