NetWorker: Come creare un utente solo API REST locale
Summary: È possibile seguire la seguente procedura per creare un account utente NetWorker per l'API REST ma non dispone dell'accesso a NMC. L'utente dell'API REST ha accesso all'interfaccia utente web di NetWorker (NWUI) a seconda del ruolo NetWorker assegnato all'utente. L'accesso a NWUI dipende dai "NSR User Groups", gli stessi ruoli utilizzati per definire i privilegi dell'API REST. La creazione di un utente API REST è opzionale, non è richiesta per eseguire operazioni API REST sul server NetWorker. ...
Instructions
- Sul server NetWorker, aprire una shell root (Linux) o il prompt dei comandi dell'amministratore (Windows):
- Creare l'account utente API REST utilizzando la sintassi dei comandi seguente:
authc_mgmt -u Administrator -p 'NETWORKER_ADMINISTRATOR_PASSWORD' -e add-user -D user-name="RESTAPI_USERNAME" -D user-password='USER_PASSWORD' -D user-enabled
[root@nsr ~]# authc_mgmt -u Administrator -p '!Password1' -e add-user -D user-name="RESTAPI" -D user-password='!Password1' -D user-enabled User RESTAPI is created successfully. [root@nsr ~]#
- Ottenere il "DN utente" dell'utente dell'API REST:
authc_mgmt -u Administrator -p 'NETWORKER_ADMINISTRATOR_PASSWORD' -e find-all-users authc_mgmt -u Administrator -p 'NETWORKER_ADMINISTRATOR_PASSWORD' -e find-user -D user-id=USER-ID
[root@nsr ~]# authc_mgmt -u Administrator -p '!Password1' -e find-all-users The query returns 7 records. User Id User Name 1000 administrator 1001 svc_nmc_nsr ... 1038 RESTAPI [root@nsr ~]# authc_mgmt -u Administrator -p '!Password1' -e find-user -D user-id=1038 User Id : 1038 User Name : RESTAPI User Domain : User First Name: User Last Name : User Email : User Details : User DN : cn=RESTAPI,cn=Users,dc=nsr,dc=amer,dc=lan User Enabled : true User Groups : []
- Concedere all'utente l'autorizzazione sul server NetWorker.
nsraddadmin -e cn=RESTAPI_USERNAME,cn=users,cn=NSR_SERVERNAME,dc=DOMAIN_VALUE1,dc=DOMAIN_VALUE2Esempio:
[root@nsr ~]# nsraddadmin -e cn=RESTAPI,cn=users,cn=nsr,dc=amer,dc=lan 134751:nsraddadmin: Added role 'cn=RESTAPI,cn=users,cn=nsr,dc=amer,dc=lan' to the 'Security Administrators' user group. 134751:nsraddadmin: Added role 'cn=RESTAPI,cn=users,cn=nsr,dc=amer,dc=lan' to the 'Application Administrators' user group.
nsradmin Prompt:
Sintassi: user=USERNAME,host=NSR_SERVERNAME
Esempio di aggiunta dell'utente API REST al gruppo di utenti Operators su un server NetWorker:
[root@nsr ~]# nsradmin
NetWorker administration program.
Use the "help" command for help, "visual" for full-screen mode.
nsradmin> show name;comment
nsradmin> p type: nsr usergroup
name: Users;
comment: \
Members of this group can back up to and recover from NetWorker.;
name: Database Administrators;
comment: \
Members of this group are typically database administrators that can partially administer NetWorker.;
name: Database Operators;
comment: \
Members of this group are typically database operators that can operate NetWorker.;
name: Auditors;
comment: \
Members of this group can audit the NetWorker security logs.;
name: Operators;
comment: Members of this group can operate NetWorker.;
name: Application Administrators;
comment: \
Members of this group can perform the application administration of NetWorker.;
name: Security Administrators;
comment: \
Members of this group can administer the security settings of NetWorker.;
name: Monitors;
comment: \
Members of this group can monitor the NetWorker application.;
name: Archive Users;
comment: Members of this group can archive local data;
name: VMware FLR Users;
comment: \
Members of this group can perform VMware file level recovery operations from NetWorker.;
nsradmin> show
Will show all attributes
nsradmin> . type: nsr usergroup; name: operators
Current query set
nsradmin> update users: user=RESTAPI,host=nsr.amer.lan
users: user=RESTAPI,host=nsr.amer.lan;
Update? y
updated resource id 125.0.90.20.0.0.0.0.196.80.99.102.192.168.9.150(4)
nsradmin> show
Will show all attributes
nsradmin> print
type: NSR usergroup;
name: Operators;
comment: Members of this group can operate NetWorker.;
external roles: ;
users: user=RESTAPI,host=nsr.amer.lan;
privileges: Remote Access All Clients,
View Application Settings, Operate NetWorker,
Monitor NetWorker,
Operate Devices and Jukeboxes,
Recover Local Data, Recover Remote Data,
Backup Local Data, Backup Remote Data,
Archive Data;
nsradmin> q
[root@nsr ~]#
- Assicurarsi che l'attendibilità dell'autenticazione di NetWorker sia stata stabilita con l'istanza authc locale:
nsrauthtrust -H NSR_SERVERNAME -P 9090 nsraddadmin -H NSR_SERVERNAME -P 9090
- L'API REST può essere testata utilizzando quanto segue:
curl -ik GET -u RESTAPI_USERNAME:'USERPASSWORD' -H "Content-Type: application/json" https://NSR_SERVERNAME:9090/nwrestapi/v3/global/
[root@nsr ~]# curl -ik GET -u RESTAPI:'!Password1' -H "Content-Type: application/json" https://nsr.amer.lan:9090/nwrestapi/v3/global/
curl: (6) Could not resolve host: GET
HTTP/1.1 200
Content-Security-Policy: frame-ancestors 'none';script-src' 'self';object-src 'self'
Strict-Transport-Security: max-age=31536000
X-XSS-Protection: 1; mode=block
X-Frame-Options: DENY
X-Content-Type-Options: nosniff
Date: Thu, 11 Jul 2024 18:22:58 GMT
Cache-Control: no-cache,no-store,must-revalidate
Pragma: no-cache
Expires: 0
Content-Type: application/json
Transfer-Encoding: chunked
Server: NSR SERVICES for Authentication
{"links":[{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/alerts","title":"List of alert messages"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/auditlogconfig","title":"Audit log configuration"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/auditlogconfigs","title":"Audit log configurations"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/backups","title":"List of backups"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/clients","title":"List of clients"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/cloudboostappliances","title":"List of cloudboost appliances"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/datadomainsystems","title":"List of data domain systems"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/dddevicereplication","title":"DD device replication"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/devices","title":"List of storage devices"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/directives","title":"List of backup directives"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/inspect","title":"Inspect remote/local server"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/jobgroups","title":"List of job groups"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/jobindications","title":"List of job indications"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/jobs","title":"List of jobs"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/jukeboxes","title":"List of jukeboxes"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/labels","title":"List of volume label templates"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/licenseconfig","title":"Server license configuration"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/licenses","title":"List of license templates"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/lockbox","title":"Lockbox resource"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/mediaconfig","title":"Server media configuration"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/mobilestorageunits","title":"Mobile storage units"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/nasdevices","title":"List of NAS devices"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/notifications","title":"List of notification settings"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/nsrcloneconfig","title":"NSR Clone Configuration"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/pools","title":"List of pools"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/probes","title":"List of probes"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/protectiongroups","title":"List of protection groups"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/protectionpolicies","title":"List of protection policies"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/recoverapps","title":"List of recovery applications"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/recovers","title":"List of recover resources"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/rules","title":"List of rules"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/schedules","title":"List of schedules"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/securityconfig","title":"Server security configuration"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/serverconfig","title":"Server configuration"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/servermessages","title":"List of server messages"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/serverstatistics","title":"Server statistics"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/sessions","title":"List of save/recover sessions"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/storagenodes","title":"List of storage nodes"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/tenants","title":"Restricted data zone protection"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/timepolicies","title":"List of Time Policies"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/unconfiguredlibraries","title":"List of unconfigured libraries"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/usergroups","title":"List of user groups"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/vmware","title":"View of VMware objects"},{"href":"https://nsr.amer.lan:9090/nwrestapi/v3/global/volumes","title":"List of volumes"}]}[root@nsr ~]#
curl installato e il comando può essere eseguito anche dal prompt dei comandi di Windows. L'URL REST può essere specificato anche all'interno di un web browser.
Se non si desidera che la password utente dell'API REST scada ogni 90 giorni (impostazione predefinita), procedere come segue: NetWorker: Come disabilitare la scadenza della password per gli account NetWorker.
Se esistono più server NetWorker, ripetere questo processo su ciascuno di essi per assicurarsi che l'utente dell'API REST locale rimanga coerente nella datazone. Se si utilizza un singolo server di autenticazione NetWorker in cui l'utente è stato creato, aggiungere un'intestazione aggiuntiva alle funzioni API REST per un'autenticazione corretta. In questo modo si indica alla funzione API REST di eseguire l'autenticazione utilizzando il server di autenticazione NetWorker definito nell'intestazione. Vedere: API REST NetWorker: Come utilizzare un server AUTHC remoto durante l'elaborazione delle richieste RESTAPI?