Um cenário de instalação de vários domínios, um domínio principal mantém um conjunto de domínios locatários autocontidos. Cada domínio locatário aparece para seus clientes como um domínio independente separado.
Provedores de serviço em nuvem podem hospedar serviços para diversos clientes usando o cenário de instalação de domínios múltiplos. Neste cenário, o provedor de serviços executa um domínio principal do FileNet P8 e um ou mais domínios locatários dentro do mesmo conjunto de servidores Content Platform Engine, reduzindo a sobrecarga da implementação de instâncias do servidor de aplicativos separadas do Content Platform Engine para cada cliente. Os locatários são isolados um do outro e operam independentemente de outros locatários. Por exemplo, um armazenamento de objeto do locatário não pode ser acessado a partir do domínio principal ou a partir dos outros domínios de locatário.
Os recursos físicos de infraestrutura e armazenamento nesse ambiente são controlados pelo domínio principal, o que permite que o provedor de serviços configure e gerencie a infraestrutura de diversos locatários. Exemplos incluem dispositivos, servidores e sites físicos. Os domínios de locatário expõem uma cópia somente leitura desses objetos. Outros objetos de domínio de locatário são controlados pelo locatário. Exemplos incluem a configuração do diretório, complementos, armazenamentos de objetos e regiões isoladas. Alguns desses objetos são configurados inicialmente para o valor no principal, mas podem ser modificados pelo locatário. Os domínios locatários não podem acessar ou modificar nada no domínio principal ou em outros domínios locatários.
Para acessar o domínio principal em uma configuração de múltiplos domínios, os aplicativos clientes especificariam o mesmo tipo de URL que seria usado para acessar um domínio independente normal. Para acessar um domínio locatário, um parâmetro ?tenantId=<tenant_identifier> é anexado à URL do servidor. Essa convenção se aplica as aplicativos clientes Content Engine e Process Engine.
Aplicar uma correção ou um upgrade ao software do servidor Content Platform Engine afeta todos os locatários simultaneamente. Em outras palavras, não é possível corrigir ou atualizar somente um único locatário.
Cada locatário tem uma conexão única com o banco de dados. O banco de dados GCD do locatário e todos os armazenamentos de objetos e regiões isoladas usarão essa conexão do banco de dados compartilhada. O provedor de serviços designa qual banco de dados cada locatário usa. Um locatário pode ser configurado para usar o mesmo banco de dados como o domínio principal ou outro locatário, mas a configuração recomendada é para cada locatário usar um banco de dados separado.
Em cenários baseados em nuvem, o provedor em nuvem define o esquema de autenticação, que é geralmente algum tipo de gerenciamento de identidade federada. O provedor em nuvem configura a propriedade AuthenticationRealmName de cada domínio locatário; o Content Platform Engine assegura, então, que somente os usuários que foram autenticados com relação à região WebSphere do locatário podem acessar recursos dentro desse domínio locatário. Cada locatário pode ser configurado para replicar seus usuários e grupos em um diretório baseado em nuvem para ser usado pelo domínio locatário para propósitos de autorização.
É recomendado usar o endereço de email como o UserNameAttribute para a configuração do diretório no domínio principal. Fazer isso evita um conflito em que um usuário em um domínio locatário pode ter o mesmo nome de usuário que um usuário no domínio principal; nenhum dos usuários é capaz de efetuar login.
Em um cenário de múltiplos domínios, o Content Platform Engine deve usar o WebSphere Application Server. Múltiplos domínios são suportados somente para novas instalações e não para upgrades. Além disso, o suporte para uma configuração de diversos domínios está atualmente limitado a aplicativos customizados. Até agora, os aplicativos cliente da IBM que usam o Content Platform Engine como sua base (como o IBM® Content Navigator e o IBM Case Manager) não suportam uma configuração de diversos domínios. Para aplicativos customizados, o suporte para configuração de diversos domínios é limitado aos aplicativos que usam os APIs de Java do Content Engine e do Process Engine. Aplicativos customizados que foram elaborados usando outras interfaces (como o IBM CMIS ou o Process Engine REST Service) não são suportados em uma configuração de diversos domínios.
Note também que, no modelo de diversos domínios, não há um mecanismo para a partição de recursos de processamento (como memória, ciclos de CPU, encadeamentos e conexões com o banco de dados) para evitar que um locatário use uma quantidade desproporcional de recursos. Por isso, configurações de diversos domínios são essencialmente projetadas para aplicativos mais limitados onde a solução não expõe todos os recursos dos APIs do Content Engine e do Process Engine. Para a maioria dos clientes que precisam de suporte para diversas unidades de negócios, hospedar diversos domínios P8 virtualizados em hardwares compartilhados é a melhor abordagem. Esta abordagem fornece a capacidade de limitar os recursos usados por qualquer locatário e é, por isso, mais adequada para a maioria dos clientes que desejam compartilhar recursos de hardware através de diversos aplicativos.