Dell Unity: UEMCLI-problemer med specialtegn i administratoradgangskoden
Summary: Når du bruger UEMCLI på Linux- eller Microsoft-operativsystemer, kan visse specialtegn i adgangskoder fortolkes af operativsystemet i stedet for at blive overført som en del af adgangskoden. Denne adfærd er forventelig og bestemmes af operativsystemet; Se dokumentationen til operativsystemet for at få vejledning om understøttede specialtegn og tegnescape. ...
Symptoms
UEMCLI med VNXe- eller Dell Unity-systemer på Linux- eller Microsoft-operativsystemer kan visse specialtegn i adgangskoder fortolkes af operativsystemet i stedet for at blive overført som en del af adgangskodestrengen.
$ tegn på 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)
$ Tegn fortolkes ikke forskelligt af operativsystemet. Dog gælder dobbelte anførselstegn (") behandles som specialtegn. Hvis en adgangskode indeholder et dobbelt citat og ikke er escapet korrekt, UEMCLI returnerer muligvis ikke en godkendelsesfejl. I stedet kan kommandoen vise UEMCLI hjælpesyntaks i stedet for det forventede kommandooutput.
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
Nogle tegn har en særlig betydning for operativsystemet og kan fortolkes som kommandolinjesyntaks snarere end som en del af adgangskoden. Som følge heraf blev adgangskoden overført til UEMCLI kan afvige fra den adgangskode, der indtastes af brugeren.
Denne adfærd er forventelig og er ikke en defekt i UEMCLI eller Unisphere. Du kan finde oplysninger om, hvordan du bruger eller undgår specialtegn i kommandolinjeargumenter, i dokumentationen fra leverandøren af operativsystemet.
Resolution
-securePassword i stedet for ikonet -p , når du kører UEMCLI-kommandoer. Meddelelsen -securePassword Indstillingen beder om adgangskoden interaktivt, forhindrer operativsystemet i at fortolke specialtegn og sikrer, at adgangskoden ikke vises på skærmen eller registreres i kommandohistorik eller logfiler.
[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)
Hvis UEMCLI bruges i scripts, skal du sikre dig, at eventuelle specialtegn i adgangskoder undslippes korrekt i henhold til operativsystemets kommandolinjekrav. En almindelig metode er at præfikse specialtegn med en omvendt skråstreg (\), som kan hjælpe med at forhindre dem i at blive fortolket af skallen.
På Linux skal du omslutte adgangskoden i enkelte anførselstegn og undslippe specialtegn med en omvendt skråstreg. Brug af enkelte anførselstegn alene er muligvis ikke nok til alle specialtegn.
Eksempel:
Adgangskode omsluttet af enkelte anførselstegn med specialtegnet undsluppet; kommandoen lykkedes:
[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)
Indsluttet i enkelte anførselstegn uden escape, mislykkes kommandoen:
[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)
På Microsoft Windows-operativsystemer skal specialtegn, der påvirker kommandoparsing, escapes for at sikre, at de overføres korrekt til UEMCLI. Dette kan gøres ved at placere en omvendt skråstreg (\) før tegnet.
Hvis adgangskoden f.eks. indeholder et dobbelt anførselstegn ("), skal anførselstegnet undviges med en omvendt skråstreg. Dette forhindrer kommandofortolkeren i at behandle den som syntaks og gør det muligt at behandle adgangskoden korrekt.
Eksempel:
Dobbelt anførselstegn undslap med en omvendt skråstreg; kommandoen lykkedes:
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)