Dell Unity: Проблеми UEMCLI зі спеціальними символами в паролі адміністратора
Summary: При використанні UEMCLI на Linux або Microsoft певні спеціальні символи паролів можуть інтерпретуватися операційною системою, а не передаватися як частина пароля. Ця поведінка очікується і визначається операційною системою; Зверніться до документації операційної системи для отримання рекомендацій щодо підтримуваних спеціальних символів та втечі символів. ...
Symptoms
UEMCLI у системах VNXe або Dell Unity на Linux або Microsoft певні спеціальні символи паролів можуть інтерпретуватися операційною системою замість того, щоб передаватися як частина рядка пароля.
$ персонажа на Linux).
[user@localhost ~]$ uemcli -d <IP> -u linuxtest -p xRz4bJH$Wxv /sys/general show
Storage system address: <IP>
Storage system port: 443
HTTPS connection
Operation failed. Error code: 0x6000001
You do not have access to perform the requested operation. (Error Code:0x6000001)
$ Character не інтерпретується інакше операційною системою. Однак подвійні лапки (") розглядаються як особливі символи. Якщо пароль містить подвійну лапку і не має правильного збереження, UEMCLI може не повертати помилку автентифікації. Натомість команда може відображати UEMCLI Допоможіть синтаксис, а не очікуваний вихід команд.
C:\Users\user>uemcli -d <IP> -u microsofttest -p Pass"word123! /sys/general show
[Get help on client options]
uemcli -help {CMDHELP | CMD | -upload | -download |
-version | -saveUser | -removeUser | -removeAllUsers |
-default | -certList | -certDel | -certClear |
-certImport}Cause
Деякі символи мають особливе значення для операційної системи і можуть інтерпретуватися як синтаксис командного рядка, а не як частина пароля. Внаслідок цього пароль перейшов до UEMCLI може відрізнятися від пароля, введеного користувачем.
Ця поведінка очікувана і не є дефектом у UEMCLI або Unisphere. Для отримання інформації про використання або уникання спеціальних символів у аргументах командного рядка зверніться до документації, наданої виробником операційної системи.
Resolution
-securePassword Опція замість -p опція при запуску команд UEMCLI. Повідомлення -securePassword Опція запитує пароль інтерактивно, не даючи операційній системі інтерпретувати спеціальні символи та забезпечуючи, що пароль не відображається на екрані або не записується в історії команд чи журналах.
[user@localhost ~]$ uemcli -d <IP> -u linuxtest -securePassword /sys/general show
Password:
Storage system address: <IP>
Storage system port: 443
HTTPS connection
1: System name = Unity Array
Model = Unity 300
Platform type = EMC Storage System
Product serial number = CKM00161XXXXXX
Auto failback = on
Health state = Major failure (20)
Якщо UEMCLI використовується в скриптах, переконайтеся, що всі спеціальні символи паролів правильно збережені відповідно до вимог командного рядка операційної системи. Поширеним методом є додавання спеціальних символів до косої черти (\), що допомагає запобігти їх інтерпретації оболонкою.
У Linux обмотуйте пароль у лапки та уникайте спеціальних символів із косою косою черею. Використання окремих лапок може бути недостатнім для всіх спеціальних символів.
Приклад:
Пароль вкладений у лапки з втраченим спеціальним символом; команда виконується успішно:
[user@localhost ~]$ uemcli -d <IP> -u linuxtest -p 'xRz4bJH\$Wxv' /sys/general show
Storage system address: <IP>
Storage system port: 443
HTTPS connection
1: System name = Unity Array
Model = Unity 300
Platform type = EMC Storage System
Product serial number = CKM00161XXXXXX
Auto failback = on
Health state = Major failure (20)
У вигляді лапок без escape команда не виконується:
[user@localhost ~]$ uemcli -d <IP> -u linuxtest -p 'xRz4bJH$Wxv' /sys/general show
Storage system address: <IP>
Storage system port: 443
HTTPS connection
Operation failed. Error code: 0x6000001
You do not have access to perform the requested operation. (Error Code:0x6000001)
В операційних системах Microsoft Windows спеціальні символи, що впливають на парсінг команд, потрібно уникати, щоб передати їх коректно до UEMCLI. Це можна зробити, розміщуючи косу косу (\) перед персонажем.
Наприклад, якщо пароль містить подвійні лапки ("), лапки слід вимкнути з косою косою сліфом. Це не дозволяє інтерпретатору команд розглядати їх як синтаксис і дозволяє правильно обробляти пароль.
Приклад:
Подвійна лапка вийшла з косою косою косою рисою; команда виконується успішно:
C:\Users\user>uemcli -d <IP> -u microsofttest -p Pass\"word123! /sys/general show
Storage system address: <IP>
Storage system port: 443
HTTPS connection
1: System name = Unity Array
Model = Unity 300
Platform type = EMC Storage System
Product serial number = CKM00161XXXXXX
Auto failback = on
Health state = Major failure (2)