Importação de Usuários e Grupos
Através da administração da importação de Usuários e Grupos é possível sincronizar usuários e grupos de um repositório externo com o banco de dados do LumisXP.
É executado em duas etapas: na primeira são registrados os geradores de XML, que criam o arquivo XML com usuários e grupos extraídos do repositório externo (um Active Directory, por exemplo). A segunda etapa registra os importadores que insere o conteúdo do XML (gerado na primeira etapa) no banco de dados do LumisXP.
Arquivos de Configuração
Através da administração de arquivos de configuração é possível visualizar e excluir os arquivos XML utilizados para acessar um determinado repositório externo. Estes arquivos devem estar localizados em "lumisdata/config/importprincipal".

Para salvar no servidor, arquivos de configuração que estão locais ou em outros servidores que não o da aplicação, deve-se acionar "Enviar Arquivo" e informar:

- Arquivo: Neste campo é atribuído o arquivo xml que encontra-se em um diretório local ou de outro servidor. Basta localizá-lo clicando em "Procurar". Ao confirmar, o arquivo será salvo em "lumisdata/config/importprincipal"do servidor de aplicação.
Exemplo de arquivo de configuração:
<!-- $Revision: 14408 $ $Date: 2012-06-20 13:11:00 -0300 (qua, 20 jun 2012) $ -->
<config>
<importgroups>true</importgroups>
<readers>
<reader type="ADReader">
<!--
Expression language for calculating shortId for a group.
The resulting value for the group shortId must be unique along group short ids and user logins.
EL variable 'group.attributes' corresponds to a map with the LDAP group attributes.
For AD-Kerberos authentication, it must be <sAMAccountName>@<Kerberos Realm>.
-->
<groupShortId>${group.attributes.cn}@meudominio.com</groupShortId>
<!--
Expression language for calculating login for a user.
EL variable 'user.attributes' corresponds to a map with the LDAP user attributes.
For correct AD-Kerberos authentication, it must be <sAMAccountName>@<Kerberos Realm>.
-->
<login>${user.attributes.sAMAccountName}@meudominio.com</login>
<!--
Optionally, alternative logins for imported users may be specified as the example below.
The expression for the alternativeLogin accepts the same variables as the expression for the login above.
<alternativeLogins>
<alternativeLogin>expression for the alternative login 1</alternativeLogin>
<alternativeLogin>expression for the alternative login 2</alternativeLogin>
</alternativeLogins>
-->
<uris>
<uri recursive="true">ldap://10.200.10.2:389/OU=Usuarios,DC=MEUDOMINIO,DC=COM</uri>
<uri>ldap://10.200.10.2:389/OU=Grupos,DC=MEUDOMINIO,DC=COM</uri>
</uris>
<credential>
<user>username@meudominio.com</user>
<password encrypted="false">password</password>
</credential>
<user>
<attributes>
<attribute name="phoneNumber" />
</attributes>
</user>
</reader>
</readers>
</config>
O arquivo de configuração a ser criado deve conter as seguintes tags:
<importgroups> |
Pode conter os valores “true” para importar os grupos contidos no diretório; ou “false” apenas para importar os usuários. |
<readers> |
Agrupa os vários “reader”. |
<reader> |
Define um leitor de usuários/grupos para cada origem especificada. |
type |
O atributo “type” define o tipo de leitor. O LumisXP vem com um leitor do tipo “ADReader” que acessa o Active Directory para extrair os usuários e grupos. Outros leitores podem ser implementados para outros tipos de repositórios. Para isso basta acrescentar um atributo com nome "className" e valor o nome qualificado do class customizado que implementa a interface IPrincipalReader. |
<groupShortId> |
Expression language usada para gerar o shortId de grupos. |
<login> |
Expression language usada para gerar o login de usuários. |
<alternativeLogin> |
Expression language usada para gerar logins alternativos de usuários. |
<uris> |
Agrupa vários possíveis caminhos |
<uri> |
Define o caminho para o repositório. No caso do Active Directory, que usa o protocolo LDAP, o formato da URIsegueoformato:“ldap://host_name:port/CN=,OU=,DC=” |
recursive |
O atributo “recursive” pode ser definido com valor "true" para varrer o uri recursivamente e não só no nível inicial. Por padrão esse valor é false. |
<credencial> |
Contém as tags |
<user> |
Define o nome do usuário que tem direitos de acesso ao repositório. |
<password> |
Define a senha do usuário para acessar o repositório. |
encrypted |
O atributo “encrypted” deve ser definido com valor "true" se a senha no arquivo de configuração estiver criptografada. Por padrão esse valor é false. Para mais informações de como criptografar senhas ver aqui |
<user> |
Define os atributos customizados de usuário que deverão ser lidos do repositório. |
<attributes> |
Contém os atributos customizados, que foram préviamente cadastrados em atributos de usuário, que deverão ser lidos do repositório. Os atributos devem ser keyword, String ou text. |
<attribute> |
Um atributo customizado que deverá ser lido do repositório. |
name |
O nome do atributo a ser lido. |
Gerar XML
Esta é a primeira etapa do processo de importação de usuários e grupos. Refere-se ao cadastro de geradores XML. É necessário especificar um arquivo de configuração para acesso a um AD e um arquivo de saída contendo os dados extraídos para serem importados para o LumisXP.
Para isso, deve-se clicar em “adicionar” na área administrativa de geradores XML, e preencher as seguintes informações:

- Origem: nome do repositório externo de usuários e grupos;
- Arquivo de configuração: nome do arquivo de configuração (juntamente com a extensão .xml) que contém informações do repositório de origem. O arquivo deve estar em “lumisdata/config/importprincipal ” (não necessitando informar o caminho);
- Arquivo de saída: nome do arquivo que conterá os dados (usuários e grupos) extraídos do repositório externo. Este arquivo será salvo em “lumisdata/data/importprincipal”. Se o diretório não existir, será criado na primeira execução para a extração de dados.
- Agendar execução automática: indica se a geração do XML será realizada automaticamente. Caso a opção de geração automática seja escolhida, a geração será feita automaticamente uma vez por dia.
Para extrair os dados de determinado repositório, deve-se selecionar o gerador XML correspondente e acionar “Executar”. Desta forma os dados de usuários e grupos são extraídos para o arquivo de saída estipulado previamente.

Na geração do arquivo XML, o usuário que não possuir login windows, será utilizado o login netbios como o login principal do LumisXP. Caso o usuário não possua login netbios, ele não é exportado para esse arquivo.
Como a identificação do usuário está baseada no login principal do LumisXP, cadastrar um login windowspara um usuário que não o possui, equivale a alterar seu login principal, e dessa forma, será identificado como um usuário diferente durante a importação. O mesmo ocorreria se o login windowsfosse alterado.
Por outro lado, o login netbios só é levado em conta se o parâmetro netbiosDomain for especificado na configuração do arquivo para gerar o XML.
Importar XML
Esta é a segunda etapa do processo de importação de usuários e grupos de um repositório externo. Nesta etapa, são configurados importadores que são responsáveis por lerem o arquivo de saída gerado na etapa anterior e gravarem as informações no banco de dados do LumisXP.
Para isso, deve-se clicar em “Adicionar” no gerenciador de importadores e preencher as seguintes informações.

- Origem: nome do repositório externo de usuários e grupos;
- Arquivo de entrada: corresponde ao arquivo de saída da primeira etapa que será lido pelos importadores. Deve ser informado o nome juntamente com a extensão;
O arquivo de entrada deverá ter o seguinte formato:
<records>
<origin>origem</origin>
<users>
<user>
<login>login@domain</login>
<alternativeLogins>
<alternativeLogin>DOMAIN\login</alternativeLogin>
</alternativeLogins>
<email></email>
<firstName>user_firstname</firstName>
<lastName>user_lastname</lastName>
<channelId></channelId>
<attributes>
<attribute>
<name>custom_attribute</name>
<value>custom attribute value</value>
</attribute>
</attributes>
</user>
</users>
<groups>
<group>
<shortId>group_shortid</shortId>
<name>group_name</name>
<description></description>
<channelId></channelId>
<members>
<member>username@lumis.net</member>
<member>username@lumis.net</member>
</members>
</group>
</groups>
</records>
As tags contêm as seguintes informações:
<origin> |
Define o nome de origem dos usuários e grupos. |
<users> |
Contém a lista dos usuários. |
<user> |
Contém as propriedades do usuário. |
<login> |
Login do usuário. |
<alternativeLogins> |
Contém a lista de login alternativo de cada usuário. |
<alternativeLogin> |
Define o login alternativo do usuário. |
<name> |
Nome do usuário. |
<channelId> |
ID do canal que o usuário irá pertencer. Este campo só é preenchido quando o usuário for um usuário local de um canal. |
<attributes> |
Contém os atributos customizados. Os atributos precisam ser previamente cadastrados nas configurações do portal em Atributos de usuários e precisam ser do tipo keyword, string ou text. |
<groups> |
Contém a lista de grupos. |
<group> |
Contém as propriedades do grupo. |
<shortId> |
Apelido ou nome curto do grupo. |
<name> |
Nome completo do grupo. |
<description> |
Descrição do grupo. |
<channelId> |
ID do canal que o grupo irá pertencer. Este campo só é preenchido quando o grupo for local a um canal. |
<members> |
Contém os membros de um grupo. |
<member> |
Login do usuário membro do grupo. |
- Se existir no destino: permite ignorar ou sobrescrever o usuário ou grupo, caso eles existam no destino;
- Se não existir no destino: permite ignorar ou incluir o usuário ou grupo, caso eles não existam no destino;
- Se não existir na origem: Permite ignorar ou remover os grupos e desabilitar os usuários, caso eles existam no destino e não existam no repositório de origem.
- Agendar execução automática: indica se a importação do XML será realizada automaticamente. Caso a opção de importação automática seja escolhida, a importação será feita automaticamente uma vez por dia.
Para importar para o banco do LumisXP, deve-se selecionar o importador XML correspondente e acionar “Executar”.

Desta forma os dados de usuários e grupos serão importados para o banco e poderão ser acessados pelo gerenciador de Usuários e Grupos.
Arquivos XML
Através da administração de arquivos XML é possível visualizar e excluir os arquivos que contêm os usuários e grupos extraídos de um determinado repositório. Eles são os arquivos de saída do processo "Gerar XML" e utilizados como arquivos de entrada no processo "Importar XML". Estes arquivos estão localizados em "lumisdata/data/importprincipal".

Para salvar no servidor, arquivos XML que estão locais ou em outros servidores que não o da aplicação, deve-se acionar "Enviar Arquivo" e informar:

- Arquivo: Neste campo é atribuído o arquivo xml que encontra-se em um diretório local ou de outro servidor. Basta localizá-lo clicando em "Procurar". Ao confirmar, o arquivo será salvo em "lumisdata/data/importprincipal"do servidor de aplicação.