Para desabilitar com êxito o Snapshot Management para os membros de um grupo Virtual Server Owner (VSO), você não pode simplesmente remover as respectivas permissões da função VSO. Embora os usuários do VSO não possam acessar essas funções, o portlet "Meus servidores" ainda exibirá os botões correspondentes e exibirá um erro se qualquer usuário do VSO clicar neles. Para evitar isso, faça algumas modificações simples no código do portlet Manage_MyServers para que ele não exiba esses botões.
Não existem requisitos específicos para este documento.
Este documento não está restrito a versões específicas de hardware e software.
Para obter mais informações sobre convenções de documentos, consulte Convenções de Dicas Técnicas da Cisco.
Nesta seção, você recebe as informações necessárias para modificar o portlet Manage_MyServers de modo que os botões Snapshot sejam removidos para usuários VSO que não devem ter esse acesso.
Você pode usar qualquer editor de texto ASCII para editar o código Javascript do portlet, contanto que ele suporte copiar, colar e salvar em arquivo. Recomendamos que utilize uma que suporte a numeração de linha na tela e funções de pesquisa. Lembre-se de salvar o código original em um arquivo de texto local antes de modificá-lo, para que você possa restaurá-lo facilmente, se necessário.
As modificações do código são relativamente simples. Primeiro, você detecta a função do usuário e, em seguida, desabilita os botões Gerenciar Snapshots se o usuário for membro do grupo VSO. Siga estes passos:
Inicie o portal da nuvem e navegue para Designer de portal > Procurar portlets.
No painel esquerdo, selecione a pasta JavaScript e selecione Manage_MyServers.
No painel principal, selecione a guia Exibir. O portal de nuvem exibe o código Javascript do portlet Manage_MyServers.
Selecione todo o código e, em seguida, copie-o e cole-o no editor de texto. Salve uma cópia deste texto original como um arquivo em uma máquina local, como um backup.
getActionButtonContent(cntName,cntStatus,cntOwned)
Adicione um colchete aberto ({) ao final dessa linha. Em seguida, adicione uma linha com o seguinte código imediatamente após:
var personRole = getCurrentUserRole();
As duas linhas agora devem ter a seguinte aparência:
function getActionButtonContent(cntName,cntStatus,cntOwned){ var personRole = getCurrentUserRole();
Localize a seguinte seção do código (em torno da linha 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>';
Na linha imediatamente antes desta seção de código, adicione a seguinte linha:
if(personRole != 'Virtual Server Owner') {
Não se esqueça de inserir o caractere de colchete aberto ({) no final da linha.
Agora localize a seguinte seção próxima do código (em torno da linha 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>';
Adicione um colchete de fechamento (}) para a instrução if em uma nova linha imediatamente após esta seção. A seção completa do código modificado agora deve ser semelhante a esta:
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>'; }
Copie o código recém-modificado de volta na guia Exibir do portlet Gerenciar_MeusServidores e clique em Salvar. Os botões agora estarão ocultos para um VSO.
Revisão | Data de publicação | Comentários |
---|---|---|
1.0 |
10-Jan-2013 |
Versão inicial |