CreateRadiusUserV2 – Создание аккаунта Wi-Fi клиента в базе RADIUS V2

Общая информация

  1. Команда актуальна, начиная с версии 1.18

  2. Начиная с версии 1.24, появилась возможность хешировать пароль с помощью атрибута Encryption-Type, который может принимать значения ClearText (простой текст), NT (NT-хеш). Для того, чтобы создать пользователя с хешированным паролем необходимо указать атрибут Encryption-Type с необходимым типом шифрования. Значением по умолчанию для атрибута Encryption-Type является ClearText.

  3. Шифрование пароля доступно только для категорий пользователей enterprise, hotspot, bras и equipment.

Входные параметры

Параметр Значение Формат значения Расшифровка формата Ссылка

usernаme

Логин клиента. Уникальность аккаунта определяется по логину и домену.

^.{1,64}$

Текст до 64-х символов.

Wi-Fi пользователь

domain

Домен клиента. Уникальность определяется по логину и домену.

(?=^.{1,235}$)(^((?!-|_|.*(__|--).*)[a-zA-Z0-9_\-]{1,63}\.)*((?!-|_|.*(__|--).*)[a-zA-Z0-9_\-]{1,63})$)

Текст длиной до 235 символов, удовлетворяющий правилам FQDN

Domain

tariffCode

Код тарифного плана. Может быть пустым. Если установлен, то новый пользователь будет принадлежать данному тарифному плану.

[a-zA-Z0-9 ]{1,64}

Текст латинскими буквами и цифрами до 64-х символов

certificateSubjectInfo

Исходные данные для генерации клиентского сертификата. Объект CertificateSubjectInfo. Если тег пустой или period меньше 0, генерация сертификата не происходит. Для генерации сертификата должны быть заполнены все теги объекта. При отсутствии обязательного тега создание пользователя не происходит.

attribute

Атрибуты пользователя, ожидается один или больше объект. При условии создания сертификата, если в запросе не будут указаны атрибуты соответствующие полям certSubjectInfo, то атрибуты для создания пользователя проставятся из данных объекта certSubjectInfo. NbiAttr.

Выходные параметры

Параметр Значение Формат значения

code

Код ответа

Целое неотрицательное число.

detail

Пояснение к ответу

Текст английскими буквами с пробелами и спецсимволами.

response

Объект NbiRadiusUserItemSingle

Примеры команд и кодов

Код Описание ошибки

0

Успешно

Запрос
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:nbi="http://nbi.radius.eltex.org" xmlns:xsd="http://tls.object.nbi.radius.eltex.org/xsd" xmlns:xsd1="http://response.object.nbi.radius.eltex.org/xsd">
   <soapenv:Header/>
   <soapenv:Body>
      <nbi:CreateRadiusUserV2>
         <nbi:username>username</nbi:username>
         <nbi:domain>root</nbi:domain>
         <nbi:tariffCode>default</nbi:tariffCode>
         <nbi:certificateSubjectInfo>
            <xsd:country>RU</xsd:country>
            <xsd:email>usermail@mail.ru</xsd:email>
            <xsd:location>Novosibirsk</xsd:location>
            <xsd:organization>Eltex-In-Soft</xsd:organization>
            <xsd:organizationUnit>SoftWLC.Core</xsd:organizationUnit>
            <xsd:period>365</xsd:period>
            <xsd:state>Novosibirsk Oblast</xsd:state>
         </nbi:certificateSubjectInfo>
         <nbi:attribute>
            <xsd1:name>Eltex-User-Category</xsd1:name>
            <xsd1:oper>=</xsd1:oper>
            <xsd1:value>enterprise</xsd1:value>
         </nbi:attribute>
         <nbi:attribute>
            <xsd1:name>Cleartext-Password</xsd1:name>
            <xsd1:oper>:=</xsd1:oper>
            <xsd1:value>pass</xsd1:value>
         </nbi:attribute>
      </nbi:CreateRadiusUserV2>
   </soapenv:Body>
</soapenv:Envelope>
Ответ
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <ns:CreateRadiusUserV2Response xmlns:ns="http://nbi.radius.eltex.org">
         <ns:return xsi:type="ax21:NbiCodeRadiusUserItemSingleResponse">
            <ax21:code>0</ax21:code>
            <ax21:detail/>
            <ax21:response xsi:type="ax21:NbiRadiusUserItemSingle">
               <ax21:clientCrtLink>http://127.0.0.1:8080/eltex-radius-nbi/certificates/username/root.zip</ax21:clientCrtLink>
               <ax21:domain>root</ax21:domain>
               <ax21:name>username</ax21:name>
               <ax21:password>pass</ax21:password>
               <ax21:tariffCode>default</ax21:tariffCode>
               <ax21:check xsi:type="ax21:NbiAttrArray">
                  <ax21:attr xsi:type="ax21:NbiAttr">
                     <ax21:name>Cleartext-Password</ax21:name>
                     <ax21:oper>:=</ax21:oper>
                     <ax21:value>pass</ax21:value>
                  </ax21:attr>
                  <ax21:attr xsi:type="ax21:NbiAttr">
                     <ax21:name>TLS-Client-Cert-Serial</ax21:name>
                     <ax21:oper>:=</ax21:oper>
                     <ax21:value>d9</ax21:value>
                  </ax21:attr>
               </ax21:check>
               <ax21:common xsi:type="ax21:NbiAttrArray">
                  <ax21:attr xsi:type="ax21:NbiAttr">
                     <ax21:name>Eltex-User-Category</ax21:name>
                     <ax21:oper>=</ax21:oper>
                     <ax21:value>enterprise</ax21:value>
                  </ax21:attr>
                  <ax21:attr xsi:type="ax21:NbiAttr">
                     <ax21:name>Operator-Organization</ax21:name>
                     <ax21:oper>:=</ax21:oper>
                     <ax21:value>Eltex-In-Soft</ax21:value>
                  </ax21:attr>
                  <ax21:attr xsi:type="ax21:NbiAttr">
                     <ax21:name>Operator-Division</ax21:name>
                     <ax21:oper>:=</ax21:oper>
                     <ax21:value>SoftWLC.Core</ax21:value>
                  </ax21:attr>
                  <ax21:attr xsi:type="ax21:NbiAttr">
                     <ax21:name>Operator-Email</ax21:name>
                     <ax21:oper>:=</ax21:oper>
                     <ax21:value>usermail@mail.ru</ax21:value>
                  </ax21:attr>
                  <ax21:attr xsi:type="ax21:NbiAttr">
                     <ax21:name>Operator-Country</ax21:name>
                     <ax21:oper>:=</ax21:oper>
                     <ax21:value>RU</ax21:value>
                  </ax21:attr>
                  <ax21:attr xsi:type="ax21:NbiAttr">
                     <ax21:name>Operator-State</ax21:name>
                     <ax21:oper>:=</ax21:oper>
                     <ax21:value>Novosibirsk Oblast</ax21:value>
                  </ax21:attr>
                  <ax21:attr xsi:type="ax21:NbiAttr">
                     <ax21:name>Operator-Location</ax21:name>
                     <ax21:oper>:=</ax21:oper>
                     <ax21:value>Novosibirsk</ax21:value>
                  </ax21:attr>
                  <ax21:attr xsi:type="ax21:NbiAttr">
                     <ax21:name>Operator-Creator-Name</ax21:name>
                     <ax21:oper>=</ax21:oper>
                     <ax21:value/>
                  </ax21:attr>
                  <ax21:attr xsi:type="ax21:NbiAttr">
                     <ax21:name>Operator-Creator-Family</ax21:name>
                     <ax21:oper>=</ax21:oper>
                     <ax21:value/>
                  </ax21:attr>
                  <ax21:attr xsi:type="ax21:NbiAttr">
                     <ax21:name>Operator-Creator-Phone</ax21:name>
                     <ax21:oper>=</ax21:oper>
                     <ax21:value/>
                  </ax21:attr>
               </ax21:common>
               <ax21:reply xsi:type="ax21:NbiAttrArray">
                  <ax21:attr xsi:type="ax21:NbiAttr">
                     <ax21:name>Eltex-User-Create-Date</ax21:name>
                     <ax21:oper>=</ax21:oper>
                     <ax21:value>2020-09-30 09:44:04</ax21:value>
                  </ax21:attr>
                  <ax21:attr xsi:type="ax21:NbiAttr">
                     <ax21:name>Eltex-User-State</ax21:name>
                     <ax21:oper>=</ax21:oper>
                     <ax21:value>1</ax21:value>
                  </ax21:attr>
                  <ax21:attr xsi:type="ax21:NbiAttr">
                     <ax21:name>Eltex-State-Begin-Date</ax21:name>
                     <ax21:oper>=</ax21:oper>
                     <ax21:value>1601433844</ax21:value>
                  </ax21:attr>
               </ax21:reply>
               <ax21:verificationWay xsi:nil="true"/>
            </ax21:response>
         </ns:return>
      </ns:CreateRadiusUserV2Response>
   </soapenv:Body>
</soapenv:Envelope>

Код Описание ошибки

8

Нет домена или домен не соответствует правилам

10

Домен роли не имеет прав на домен клиента

19

Данный аккаунт уже существует

20

Имя пользователя некорректно

21

Отсутствуют атрибуты

22

Атрибут некорректный или отсутствует

23

Нельзя редактировать зарезервированный атрибут

24

Отсутствует оператор атрибута пользователя

25

Такого оператора '=:' атрибута пользователя не существует

26

Некорректный оператор для атрибута пользователя

28

Отсутствует обязательный атрибут пользователя

62

Домен не зарегистрирован

75

Некорректное значение для объекта CertificateSubjectInfo

76

Ошибка создания клиентского сертификата

100

Тарифного плана с таким кодом не существует

101

Код тарифного плана некорректен

444

У оператора(системного пользователя) отсутствует обязательный атрибут(Operator-Creator-Name, Operator-Creator-Family, Operator-Creator-Phone)

488

У роли нет прав на метод

509

Некорректное значение срока действия сертификата.

510

Отсутствует обязательный параметр для сертификата (organization, organizationUnit, email, country, state, location).

531

Суммарная длина логина и домена не должна превышать 63 символа для создания TLS сертификата

542

Тип хеширования пароля не поддерживается или введен некорректно

545

Шифрование пароля не поддерживается для данной категории пользователей

Пример использования

См. также

Вернуться к списку команд
Версия 1.29-3315
Дата публикации 01-02-2024 12:35:34