Iniciar uma conversa

Como ocultar opções e adicionar comentários no /Admin?

O objetivo desse FAQ é orientar administradores com relação à definição de tipos de contas que um administrador de domínio pode gerenciar, bem como a possibilidade de ocultar opções da administração via web, através de códigos em arquivo XML.
 
No IceWarp, temos 2 tipos de administradores:

  • Administrador: Tem todos os direitos sobre o servidor
  • Administrador de domínio: Tem direto de administrar as contas do seu domínio
No console do IceWarp, em Domínios & Contas / Configurações Globais / Permissões padrão, você define os padrões para novos administradores de domínio (arquivo icewarp/config/domain.dat).

IMPORTANTE: Caso administradores de domínio já possuam seu próprio domain.dat (em icewarp/dominio/conta/domain.dat), o sistema não herdará das configurações globais. Uma solução seria apagar os domain.dat de todos os administradores de domínio, ou então usar programa de Find x replace (como Simple Search and replace em www.rjlsoftware.com ou http://nirsoft.net/utils/search_my_files.html), fazendo alterações desejadas em todos os domain.dat. Ressaltando, caso clique no botão Direitos de um domain admin e clique em OK, automaticamente você está salvando o domain.dat e o mesmo não será mais herdado.

Ainda, no botão DIREITOS de um Domain Admin, você pode desabilitar alguns tipos de contas, como mailing list, grupo e executáveis, bem como definir se administradores de domínio poderão visualizar caixa postal de usuários (opção "Desativar visualização correio" para desabilitar) e gerenciar quarentena dos usuários do domínio que possuem tal serviço ativado.
 
Clicando em Avançado, verificamos o conteúdo do arquivo icewarp/config/domain.dat, que traz justamente as configurações definidas anteriormente, quanto aos tipos de contas acessíveis a Domain Administrator.
 
Verificamos o conteúdo do arquivo e, como optamos por permitir apenas a criação de contas de usuários, consta o seguinte:
 
RIGHTS=U
 
Nesse arquivo podemos adicionar algumas variáveis para ocultar determinadas opções. Por exemplo, um provedor, normalmente, não deseja que o administrador de domínio possa alterar o limite de espaço ou por mensagem de cada caixa postal. Para verificar qual variável usar, analisaremos os arquivos em icewarp\html\admin\xml\accounts. Nesses diretórios temos os arquivos user.xml (contas de usuários) e domain.xml (domínios), dentre outros, cada um representando um tipo de conta.
 
Esses arquivos contém as variáveis necessárias para desabilitar algumas opções. Por exemplo, desejamos que a aba "Limites" de domínios não sejam exibidas, de forma que administradores de domínios não possam editar tais configurações. Descobrimos o que nome da variável que faz com que a aba de limites do domínio seja exibida, é domain_limitstab. No arquivo domain.xml, a linha que tem tal variável é:
 
<SECTION name="domain_limitstab" label="TFrameAccounts_DomainOptionSheet" helpid="201010102" >
 
Notamos que trata-se da aba (tab) de limites do domínio. Sempre que desejamos ocultar uma opção, devemos descobrir qual o NAME (nome) da respectiva variável. Neste caso, trata-se da variável domain_limitstab, que deve ser especificada no arquivo domain.dat, seguida de um 0, indicando que ela deve ser ocultada por padrão para todos administradores de domínio.
 
A sugestão é que você acesse o /admin como administrador de domínio, ao mesmo tempo que mantém os arquivos domain.xml e user.xml abertos, anotando todas variáveis/opções que deseja ocultar.
 
Veja um exemplo do arquivo domain.dat, ocultando uma série de opções.
 

RIGHTS=UQ
OPTION=domain_domaintab:0
OPTION=domain_domaingroup:0
OPTION=domain_value:0
OPTION=domain_name:0
OPTION=domain_postmaster:0
OPTION=domain_adminemail:0
OPTION=domain_unknownaction:0
OPTION=domain_unknownemail:0
OPTION=admin_admingroup:0
OPTION=domain_unknownusersgroup:0
OPTION=domain_limitstab:0
OPTION=domain_DomainKeystab:0
OPTION=domain_miscellaneoustab:0
OPTION=user_alternateemail:0
OPTION=user_group_tab:0
OPTION=user_limitstab:0
OPTION=user_accounttype:0
OPTION=user_smtp:0
OPTION=user_pop3imap:0
OPTION=user_webmail:0
OPTION=user_avscan:0
OPTION=user_im:0
OPTION=user_gw:0
OPTION=user_sip:0
OPTION=user_spammailbox:0
OPTION=user_spamadmin:0
OPTION=user_miscellaneousgroup:0
OPTION=domain_disablelogin:0
OPTION=domain_userslimitsgroup:0
OPTION=domain_expirationgroup:0
OPTION=domain_desc:0
OPTION=user_syncML:0
OPTION=user_quarantinereports:1
OPTION=user_accounttab:1
OPTION=admin_admingroup:0
OPTION=user_phoneNo:0
OPTION=user_activation_outlook:0
OPTION=user_activesync:0
OPTION=user_activation_desktop:0
OPTION=user_webdav:0
OPTION=user_ftp:0
OPTION=user_sms:0
OPTION=user_useremoteaddress:1
OPTION=user_mode:0
OPTION=user_modevalue:0
OPTION=domain_servicestab:1

Note que, em Configurações Globais / Permissões padrão, estamos definindo o padrão em termos de contas que podem ser gerenciadas e opções a serem ocultadas para todos administradores de domínio, tais informações ficam no arquivo \config\domain.dat. Em cada respectiva conta administradora de domínio, na aba User / botão Rights, podemos definir excessões à regra global definida (arquivo reside em \icewarp\mail\dominio\conta\domain.dat).
 
Exemplo: No domínio icewarpdemo.com, por padrão (definido em Global Settings), temos a guia limites do usuário desativada (OPTION=user_limitstab:0). Para liberamos essa guia somente para o administrador do domínio icewarpdemo.com, basta apenas seguir o seguinte passo:
 
Gerenciamento de contas / Conta administradora de domínio. Clique no botão Direitos.
 
Ficaria da seguinte forma:
 
RIGHTS=U
OPTION=user_limitstab:1
 
Ou seja, siga todos os padrões definidos em Configurações Globais, porém, permita que a guia de limites do usuário seja exibida.
 
Outros exemplos:
 
RIGHTS=U
OPTION=user_accounttype:1
 
Aqui temos a variável que libera a opção de escolher o tipo de conta POP3 / IMAP ou POP3 & IMAP. Aqui temos um ótimo exemplo, pois trata-se de uma forma através da qual é possível oferecer contas IMAP como um serviço. Apenas para aqueles que tem o serviço IMAP contratado, é exibida a opção de se criar contas IMAP. Nos demais casos, devido à configuração user_accounttype:0, a opção referente a tipo de conta será ocultada e o IceWarp seguirá o padrão definido em Configurações Globais / Templates / Template criado como do tipo "padrão", de criar todas contas novas como POP.
 
Outro exemplo:
 
RIGHTS=U
OPTION=domain_unknownaction:1
OPTION=domain_unknownemail:1
 
Essas variáveis liberam as opções para ativarmos contas do tipo “pega tudo” (encaminhar mensagens destinadas a contas inexistentes para uma conta específica).
 
Existem outras formas de liberar essas opções. Nos arquivos xml existem algumas variáveis disable="DomainAdmin", que desabilitam a opção para administradores de domínio. Entretanto, neste caso, é necessário editar arquivos XML, que podem ser sobrescritos após um upgrade.
 
Outra dica importante é, caso você deseja que um administrador de domínio tenha direito para administrar outros domínios, basta seguir os seguintes passos.
 
Exemplo:
 
RIGHTS=U
teste.com.br
teste2.com.br
teste3.com.br
OPTION=domain_name:0
OPTION=domain_value:0
OPTION=domain_postmaster:0
OPTION=domain_adminemail:0
OPTION=domain_unknownaction
 
Dessa forma o usuário tem como administrar outros domínio como teste.com.br, teste2.com.br e teste3.com.br. Basta especificarmos os domínios que o administrador de domínio pode gerenciar, logo abaixo de linha RIGHTS. Valendo ressaltar que, por padrão, o administrador de domínio pode gerenciar contas do seu domínio corrente.
 
Outro aspecto interessante é referente a adicionar comentários no /admin. Isto pode ser útil, por exemplo, para deixar explícito na parte de criação de uma nova conta, a política de senha em vigor (mínimo de caracteres da senha, mínimo de números e letras, conforme configuração em Global Settings / Password Policy). Note que, ao atualizar o IceWarp Server, tais mudanças serão sobrescritas, portanto faça um backup dos arquivos customizados.
 
Para adicionar comentários ao /admin, é preciso editar os arquivos em \Merak\html\admin\xml\accounts.
 
Veja por exemplo, que logo antes do campo senha (arquivo user.xml), colocamos um detalhamento sobre nossa política de senha:
 
<OPTION type="label" label="Digite sua senha, que deve ter no mínimo 4 letras e 2 números e, em seguida, redigite a senha no campo Confirmar." />
<OPTION type="label" label="" />
<OPTION type="password" name="user_password" function="user_password" label="TFrameAccounts_PassLabel" />
 
Note que na primeira linha, detalhamos nossa política de senha. Em seguida, na segunda linha, colocamos um comentário em branco, apenas para que haja um espaço entre o comentário e o campo senha, que é exibido logo em seguida (e não foi alterado).

Adicionando Comentários na administração de contas via Web

Para adicionar comentários nas opções (tooltips), que aparecem ao passar o mouse por cima de uma opção/lacuna, você deve editar os arquivos na pasta IceWarp\html\admin\xml\accounts e o arquivo IceWarp\html\admin\lang\pt\alang.html (Arquivo de tradução do /Admin para português). Como exemplo vamos utilizar o arquivo user.xml e adicionar um comentário na opção Confirmar, onde você redigita a sua senha ao criar uma nova conta.

- Abra os arquivos IceWarp\html\admin\xml\accounts\user.xml e IceWarp\html\admin\lang\pt\alang.html

- No arquivo alang.html, você deve definir uma nova variável e o seu respectivo comentário. Por exemplo:

$alang["Confirmar"] = "Redigite sua senha para confirmarção.";

OBS: Essa variável pode ser acrescentada em qualquer parte do arquivo, aconselhamos sempre definir as variáveis no inicio ou no fim do arquivo, para manter uma melhor organização.

- No arquivo User.xml, vamos referenciar a variável criada no passo anterior. Antes de mais nada, devemos localizar a variável na qual devemos adicionar o comentário. Nesse caso, a linha a ser alterada é a seguinte:

<OPTION type="password" name="user_confirmpassword" function="user_password" label="TFrameAccounts_ConfirmLabel"/>

Ela deve ser alterada, fazendo referência ao comentário definido no arquivo alang.html. Veja como fica:

<OPTION type="password" name="user_confirmpassword" function="user_password" label="TFrameAccounts_ConfirmLabel" TOOLTIP="Confirmar" TOOLTIPWIDTH="170" TOOLTIPHEIGHT="60" />
 
OBS: Veja no código...

TOOLTIP="Confirmar" TOOLTIPWIDTH="170" TOOLTIPHEIGHT="60",

Estamos referenciando a variável "Confirmar" no definida alang.html usando TOOLTIP="Confirmar" e definindo a largura (TOOLTIPWIDTH="170") e tamanho (TOOLTIPHEIGHT="60") da caixa de informações.

Feito isso, basta salvar o arquivo e posicionar o cursor sobre a opção Confirmar. Veja o exemplo:



Escolher arquivos ou arraste e solte arquivos
Esse artigo foi útil?
Sim
Não
  1. Flávio Zarur Lucarelli

  2. Publicado
  3. Atualizado

Comentários