O modelo de domínio comum do virtual member manager fornece os conceitos
básicos necessários para os aplicativos do virtual member manager gerenciarem
as entidades organizacionais.
Embora o virtual member manager forneça um modelo comum, dentro do modelo
comum há flexibilidade:
- O modelo completo não tem que ser utilizado. Os aplicativos podem utilizar apenas uma parte do modelo.
- O modelo pode ser estendido quando implementado em um ambiente do cliente.
- Dentro do próprio modelo há alguma flexibilidade em como determinados conceitos
são representados.
- Entidade
- Entidade representa uma entidade organizacional gerenciada pelo virtual member manager.
Cada entidade organizacional é associada com um Identificador.
- Identificador
- Um Identificador do virtual member manager contém dois identificadores definidos pelo virtual member manager:
um ID exclusivo do virtual member manager e um nome exclusivo do virtual member manager. O ID exclusivo é globalmente exclusivo, estático e nunca reutilizado.
O nome exclusivo é exclusivo dentro do escopo de uma instância do virtual member manager, pode ser alterado e reutilizado. O nome exclusivo pode ser
globalmente exclusivo para algumas implementações do virtual member manager,
mas não é garantido. Uma entidade organizacional é armazenada em um
repositório e o ID do repositório também está disponível a partir do
Identificador. Um externalName e externalId específico de repositório também
podem estar disponíveis para a entidade.
Utilizando uma entidade armazenada em um servidor LDAP como exemplo:
- O nome exclusivo do virtual member manager da entidade é o DN mapeado da
entrada no virtual member manager.
- O ID exclusivo do virtual member manager da entidade pode ser um UUID (que
pode ser gerado pelo virtual member manager ou é do servidor LDAP).
- O RepositoryId da entidade é um nome de cadeia que identifica um repositório
em uma instância do virtual member manager. Esse nome de cadeia deve ser
exclusivo entre os nomes do repositório nessa instância do virtual member manager.
- O externalName da
entidade pode ser o DN do LDAP para a entidade.
- O externalId da entidade pode ser o UUID para a entidade no LDAP.
A entidade organizacional pode ter outros identificadores, que podem ser
identificadores na vida real como um número de seguro social ou um número da
carteira de motorista de uma pessoa. Todos esses outros identificadores são
tratados como propriedades da entidade organizacional.
- Group
- Um grupo é uma coleção
simples de entidades que podem não ter qualquer contexto relacional. Embora em
alguns modelos, o grupo é considerado uma subclasse de organização, virtual member manager, grupo de modelos como uma entidade distinta para alinhar melhor
com outros produtos existentes como o LDAP, onde um grupo é distinto de uma
organização.
- GroupMembership Association
- A associação de grupo associa um grupo a seus membros e uma entidade aos
grupos aos quais ela pertence.
- OrgContainer
- OrgContainer representa uma organização como uma empresa ou uma corporação, uma
subsidiária ou uma unidade organizacional como uma divisão, um local ou um
departamento. As propriedades o e ou podem ser utilizadas para distinguirem
se a entidade é uma organização ou uma organizationalUnit.
- GeographicLocation
- Geographic location representa um local do mundo real. O local pode ser um país, uma região
geográfica, uma localidade, e assim por diante.
- Repository
- Um repository representa um repositório de dados (por exemplo, um servidor LDAP,
um banco de dados ou um arquivo) configurado no virtual member manager. Entidades organizacionais em um repositório podem ter escopo definido
coletando-as em regiões diferentes.
Por exemplo, se um servidor LDAP for o repositório, subárvores diferentes no
servidor LDAP podem ser consideradas como regiões diferentes. Observe que há
maneiras diferentes de fazer o escopo ou coletar entidades juntas para
finalidades diferentes. Pronto para uso, o virtual member manager suporta
fazer o escopo fornecendo o constructo da região.
Outros métodos de fazer o escopo podem ser construídos na parte principal do
virtual member manager pelos aplicativos.
- Realm
- Uma realm representa um
escopo de entidades organizacionais especialmente para a finalidade de
autenticação e recuperação de associações de grupos de segurança.
Um aplicativo utiliza uma realm para especificar ao virtual member manager a
coleção de entidades organizacionais com as quais ele deseja trabalhar.
- Person
- Person representa um indivíduo
- Login account
- Uma login account representa uma conta em um sistema. A conta permite que uma pessoa ou um aplicativo efetuem login no sistema a fim
de utilizar os serviços fornecidos pelo sistema. Informações sobre uma login
account incluem os nomes que podem ser utilizados para efetuar login, uma ou
mais senhas, e assim por diante.
Nota: Na
maioria das implementações de LDAP e dos sistemas operacionais que o virtual member manager suporta pronto para uso, uma pessoa e sua conta de login são mescladas
em uma entidade única (por exemplo, a inetOrgPerson de LDAP). Para suportar
esses ambientes, o virtual member manager utiliza PersonAccount como um sub-tipo
ou extensão de LoginAccount.
PersonAccount é uma conta de login com informações sobre a pessoa.
- PersonAccount
- PersonAccount representa uma LoginAccount com propriedades da pessoa. Ela é
equivalente a um conceito de usuário, quando a entidade que utiliza a conta é
uma pessoa (em oposição a um aplicativo). PersonAccount no virtual member manager é projetada para suportar especificamente entradas do usuário em
repositórios que combinem informações da pessoa e da conta.
- Subtipos para uma conta de login
- Um subtipo representa as contas de login atuais em diversos sistemas.
- Contêiner
- Um contêiner representa um contêiner genérico utilizado para conter entidades do virtual member manager na hierarquia do virtual member manager. A classe de contêiner é incluída para integração com diretórios LDAP.
- Associação de hierarquia do Virtual member manager
- A hierarquia do virtual member manager reflete de certa forma o local lógico
de uma entidade organizacional no repositório subjacente. Ela organiza as
entidades gerenciadas pelo virtual member manager em uma estrutura hierárquica
e cria um espaço de nomes hierárquico que o virtual member manager utiliza para
designar nomes exclusivos para as entidades. Quando vários repositórios são
utilizados pelo virtual member manager simultaneamente, ele divide a hierarquia
(isto é, divide o espaço de nomes) entre os vários repositórios.