Dell Unity: UEMCLI-problemer med spesialtegn i administratorpassordet
Summary: Når du bruker UEMCLI på Linux- eller Microsoft-operativsystemer, kan visse spesialtegn i passord tolkes av operativsystemet i stedet for å sendes som en del av passordet. Denne virkemåten er forventet og bestemmes av operativsystemet. Se dokumentasjonen for operativsystemet for å få veiledning om støttede spesialtegn og tegnflukt. ...
Symptoms
UEMCLI med VNXe- eller Dell Unity-systemer på Linux- eller Microsoft-operativsystemer, kan visse spesialtegn i passord tolkes av operativsystemet i stedet for å sendes som en del av passordstrengen.
$ 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)
$ Tegnet tolkes ikke annerledes av operativsystemet. Doble anførselstegn (") behandles som spesialtegn. Hvis et passord inneholder et dobbelt anførselstegn og ikke er riktig unngått, UEMCLI kan ikke returnere en godkjenningsfeil. I stedet kan kommandoen vise UEMCLI Hjelp syntaks i stedet for forventet kommandoutdata.
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
Noen tegn har spesiell betydning for operativsystemet og kan tolkes som kommandolinjesyntaks i stedet for som en del av passordet. Som et resultat gikk passordet til UEMCLI kan avvike fra passordet som brukeren har oppgitt.
Denne virkemåten er forventet og er ikke en defekt i UEMCLI eller Unisphere. Hvis du vil ha informasjon om hvordan du bruker eller unndrar spesialtegn i kommandolinjeargumenter, kan du se dokumentasjonen fra leverandøren av operativsystemet.
Resolution
-securePassword -alternativet i stedet for -p når du kjører UEMCLI-kommandoer. Meldingen -securePassword -alternativet ber om passordet interaktivt, slik at operativsystemet ikke tolker spesialtegn og sikrer at passordet ikke vises på skjermen eller registreres i kommandohistorikk eller logger.
[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 brukes i skript, må du sørge for at spesialtegn i passord slippes på riktig måte i henhold til operativsystemets kommandolinjekrav. En vanlig metode er å prefiks spesialtegn med en omvendt skråstrek (\), som kan bidra til å forhindre at de blir tolket av skallet.
På Linux setter du passordet i enkle anførselstegn og unngår spesialtegn med omvendt skråstrek. Bruk av enkle anførselstegn alene er kanskje ikke tilstrekkelig for alle spesialtegn.
Eksempel:
Passord omsluttet av enkle anførselstegn med spesialtegnet rømt; kommandoen lykkes:
[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)
Omsluttet av enkle anførselstegn uten flukt, 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 må spesialtegn som påvirker kommandoparsing fjernes, for å sikre at de sendes riktig til UEMCLI. Dette kan gjøres ved å plassere en omvendt skråstrek (\) foran tegnet.
Hvis passordet for eksempel inneholder doble anførselstegn ("), skal anførselstegnet unngås med omvendt skråstrek. Dette forhindrer kommandotolken i å behandle det som syntaks og gjør at passordet kan behandles riktig.
Eksempel:
Doble anførselstegn unnslapp med omvendt skråstrek. kommandoen lykkes:
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)