Per disabilitare correttamente la gestione degli snapshot per i membri di un gruppo VSO (Virtual Server Owner), non è sufficiente rimuovere le rispettive autorizzazioni dal ruolo VSO. Anche se gli utenti VSO non saranno in grado di accedere a queste funzioni, il portlet "Server" visualizza comunque i pulsanti corrispondenti e visualizza un errore se un utente VSO fa clic su di essi. Per evitare ciò, apportare alcune semplici modifiche al codice del portlet Manage_MyServers in modo che non vengano visualizzati.
Nessun requisito specifico previsto per questo documento.
Il documento può essere consultato per tutte le versioni hardware o software.
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
In questa sezione vengono presentate le informazioni necessarie per modificare il portlet Manage_MyServers in modo che i pulsanti di snapshot vengano rimossi per gli utenti VSO che non dispongono di questo accesso.
È possibile utilizzare qualsiasi editor di testo ASCII per modificare il codice Javascript del portlet, purché supporti le operazioni di copia, incolla e salvataggio in un file. È consigliabile utilizzarne uno che supporti la numerazione delle righe sullo schermo e le funzioni di ricerca. È consigliabile salvare il codice originale in un file di testo locale prima di modificarlo, in modo da poterlo ripristinare facilmente se necessario.
Le modifiche al codice sono relativamente semplici. In primo luogo si rileva il ruolo dell'utente, quindi si disattivano i pulsanti Gestisci snapshot se l'utente è un membro del gruppo VSO. Attenersi alla procedura seguente:
Avviare Cloud Portal e passare a Portal Designer > Browse Portlets (Visualizza portlet).
Nel pannello sinistro, selezionare la cartella JavaScript, quindi selezionare Manage_MyServers.
Nel pannello principale, selezionare la scheda Visualizza. Cloud Portal visualizza il codice Javascript per il portlet Manage_MyServers.
Selezionare tutto il codice, quindi copiarlo e incollarlo nell'editor di testo. Salva una copia del testo originale come file su un computer locale, come backup.
getActionButtonContent(cntName,cntStatus,cntOwned)
Aggiungete una parentesi aperta ({) alla fine della riga. Aggiungere quindi una riga con il seguente codice subito dopo:
var personRole = getCurrentUserRole();
Le due righe dovrebbero avere il seguente aspetto:
function getActionButtonContent(cntName,cntStatus,cntOwned){ var personRole = getCurrentUserRole();
Individuare la seguente sezione del codice (intorno alla riga 1104):
buttons = buttons + '<div style="float:left; margin: 8px 9px; padding: 8px 2px; text-align: center; width: 10%; border: 1px solid #ffffff;">'+linkSnapshotStart+'<img src="http://www.cisco.com/RequestCenter/custom/EnterpriseEdition/'+imgSnapshot+'" '+imgSnapshotRollover+' alt="Create a named snapshot of the '+manageCntName+'\'s current state and data.">'+linkSnapshotEnd+'</Para><Para>Take Snapshot</div>';
Nella riga immediatamente precedente a questa sezione di codice aggiungere la riga seguente:
if(personRole != 'Virtual Server Owner') {
Non dimenticare di inserire il carattere parentesi aperta ({) alla fine della riga.
Individuare la seguente sezione di codice nelle vicinanze (intorno alla riga 1112):
buttons = buttons + '<div style="float:left; margin: 8px 9px; padding: 8px 2px; text-align: center; width: 10%; border: 1px solid #ffffff;">'+linkDeleteSnapshotStart+'<img src="http://www.cisco.com/RequestCenter/custom/EnterpriseEdition/'+imgDeleteSnapshot+'" '+imgDeleteSnapshotRollover+' alt="Delete Snapshot of the Virtual Machine" title="Delete Snapshot of the '+manageCntName+'." >'+linkDeleteSnapshotEnd+'</Para><Para>Delete Snapshot</div>';
Aggiungere una parentesi quadra di chiusura (}) per l'istruzione if in una nuova riga immediatamente dopo questa sezione. La sezione completa del codice modificato dovrebbe ora avere il seguente aspetto:
if(personRole != Virtual Server Owner) { buttons = buttons + '<div style="float:left; margin: 8px 9px; padding: 8px 2px; text-align: center; width: 10%; border: 1px solid #ffffff;">'+linkSnapshotStart+'<img src="http://www.cisco.com/RequestCenter/custom/EnterpriseEdition/'+imgSnapshot+'" '+imgSnapshotRollover+' alt="Create a named snapshot of the '+manageCntName+'\'s current state and data.">'+linkSnapshotEnd+'</Para><Para>Take Snapshot</div>'; buttons = buttons + '<div style="float:left; margin: 8px 9px; padding: 8px 2px; text-align: center; width: 10%; border: 1px solid #ffffff;">'+linkViewSnapshotStart+'<img src="http://www.cisco.com/RequestCenter/custom/EnterpriseEdition/'+imgViewSnapshot+'" '+imgViewSnapshotRollover+' alt="View Snapshots of the Virtual Machine" title="View Snapshots of the '+manageCntName+'." >'+linkViewSnapshotEnd+'</Para><Para>View Snapshots</div>'; buttons = buttons + '<div style="float:left; margin: 8px 9px; padding: 8px 2px; text-align: center; width: 10%; border: 1px solid #ffffff;">'+linkRevertSnapshotStart+'<img src="http://www.cisco.com/RequestCenter/custom/EnterpriseEdition/'+imgRevertSnapshot+'" '+imgRevertSnapshotRollover+' alt="Revert to Snapshot" title="Revert a '+manageCntName+' to a previous state using the snapshot of your choice." >'+linkRevertSnapshotEnd+'</Para><Para>Revert to Snapshot</div>'; buttons = buttons + '<div style="float:left; margin: 8px 9px; padding: 8px 2px; text-align: center; width: 10%; border: 1px solid #ffffff;">'+linkDeleteSnapshotStart+'<img src="http://www.cisco.com/RequestCenter/custom/EnterpriseEdition/'+imgDeleteSnapshot+'" '+imgDeleteSnapshotRollover+' alt="Delete Snapshot of the Virtual Machine" title="Delete Snapshot of the '+manageCntName+'." >'+linkDeleteSnapshotEnd+'</Para><Para>Delete Snapshot</div>'; }
Copiare nuovamente il codice modificato nella scheda Visualizza per il portlet Manage_MyServers e fare clic su Salva. I pulsanti saranno nascosti per un VSO.
Revisione | Data di pubblicazione | Commenti |
---|---|---|
1.0 |
10-Jan-2013 |
Versione iniziale |