For the complete documentation index, see llms.txt. This page is also available as Markdown.

Tenancy dividida

Visão geral

O SCEPman pode ser configurado para funcionar a partir de um Tenant do Azure separado do Tenant do Azure/Intune para o qual emite certificados para utilizadores e/ou dispositivos. Esta configuração, conhecida como split-tenancy, é especialmente útil para MSPs que queiram consolidar os custos de infraestrutura Azure entre os seus clientes, mantendo, ao mesmo tempo, um backend dedicado e uma CA única para cada um desses clientes.

A split-tenancy traz consigo uma grande desvantagem: Identidades Geridas já não podem ser usadas. Isto significa que a autenticação contra a Graph API (Azure AD e Intune) é tratada usando um registo de aplicação e um segredo de cliente, que tem de ser gerido (pelo MSP) à medida que expira.

A seguir, referimo-nos ao tenant de alojamento como tenant de origem, enquanto ao tenant do cliente como tenant de destino. Os recursos do SCEPman existirão no tenant de origem, e os dispositivos geridos no tenant de destino como no gráfico abaixo:

Passos de configuração

  1. Em tenant de origem, efetue uma implementação padrão do SCEPman/Certificate Master conforme descrito no nosso Guia de Introdução.

No SCEPman (Tenant de origem)

  1. Navegue até ao SCEPman App Service e depois para "Settings" --> "Environment variables". Localize os seguintes parâmetros e elimine os:

Variáveis de ambiente

AppConfig:AuthConfig:ManagedIdentityEnabledForWebsiteHostname

AppConfig:AuthConfig:ManagedIdentityEnabledOnUnixTime

AppConfig:AuthConfig:ManagedIdentityPermissionLevel

  1. Renomeie as seguintes definições (não altere os seus valores):

Nome original
Novo nome

AppConfig:AuthConfig:ApplicationId

AppConfig:AuthConfig:HomeApplicationId

AppConfig:AuthConfig:TenantId

AppConfig:AuthConfig:HomeTenantId

  1. Crie um registo de aplicação no tenant de destino como descrito aqui: Registo de aplicação do Azure. Isto registo de aplicação permitirá ao SCEPman aceder aos diretórios Azure AD e Intune no tenant de destino.

Crie as seguintes novas variáveis de ambiente, caso ainda não o tenha feito durante a criação do registo de aplicação:

Nome
Valor

AppConfig:AuthConfig:ApplicationId

GUID do registo de aplicação que foi criado anteriormente (tenant de destino).

AppConfig:AuthConfig:TenantId

Tenant ID do tenant de destino.

AppConfig:AuthConfig:ApplicationKey

Valor do segredo de cliente que foi criado como parte do registo de aplicação no tenant de destino.

  1. Aplique as alterações.

  2. Reinicie o SCEPman App Service.

Certificate Master

  1. Navegue até ao Certificate Master App Service e depois para "Settings" > "Environment variables".

  2. Agora tem duas opções:

    1. Se quiser que utilizadores do seu tenant de origem iniciem sessão no Certificate Master e emitam certificados, o que inclui utilizadores convidados no seu tenant de origem, por ex., do seu tenant de destino.

Opção 1: Utilizadores do Tenant de origem iniciam sessão no Certificate Master

Se for esse o caso, renomeie as seguintes definições (não altere os seus valores):

Nome original
Novo nome

AppConfig:AuthConfig:TenantId

AppConfig:AuthConfig:HomeTenantId

AppConfig:AuthConfig:ApplicationId

AppConfig:AuthConfig:HomeApplicationId

b. Pretende que utilizadores do seu tenant de destino iniciem sessão no Certificate Master e emitam certificados, o que inclui utilizadores convidados no seu tenant de destino, por ex., do seu tenant de origem.

Opção 2: Utilizadores do Tenant de destino iniciam sessão no Certificate Master

Se for esse o caso, faça o seguinte:

  • Abra um PowerShell ou Azure Cloud Shell no seu tenant de destino e execute os seguintes comandos:

Substitua <url> pela URL do seu Certificate Master

  • O CMDlet irá devolver um Application Id e um Tenant Id (o do tenant de destino). Introduza estes dois valores como

    • AppConfig:AuthConfig:HomeApplicationId e

    • AppConfig:AuthConfig:HomeTenantId nas definições do seu Certificate Master.

  • Agora crie as seguintes novas definições de aplicação, possivelmente substituindo as existentes, com os mesmos valores que no SCEPman:

Nome
Valor

AppConfig:AuthConfig:ApplicationId

GUID do registo de aplicação que foi criado anteriormente.

AppConfig:AuthConfig:TenantId

Tenant ID do tenant de destino.

AppConfig:AuthConfig:ApplicationKey

Valor do segredo de cliente que foi criado como parte do registo de aplicação anteriormente. Se quiser, pode criar um segredo de cliente novo e separado para o Certificate Master.

  1. Guarde as alterações

  2. Reinicie o SCEPman Certificate Master App Service.

  3. Conceda os direitos para solicitar certificados através da Certificate Master aplicação Web, veja aqui.

Em resumo, aqui estão as contas usadas por Certificate Master e para que são usadas:

Conta
Para que é usada?
Notas

Identidade Gerida

  • Autorizar CSRs submetidos ao SCEPman

  • Acesso ao Storage Account

N/A

Registo de aplicação com App ID de ApplicationId

O Certificate Master acede ao Microsoft Graph neste contexto para ver quais certificados foram inscritos via Intune

Se ApplicationKey não estiver presente, a Identidade Gerida é usada em alternativa.

Registo de aplicação com App ID de HomeApplicationId

Os utilizadores autenticam-se em esta aplicação. Deve estar no Tenant onde residem os utilizadores que acedem ao Certificate Master (mas utilizadores convidados de outros Tenants também podem ser autorizados)

Se HomeApplicationId não estiver presente, ApplicationId é usada em alternativa.

Agora a configuração de Split-Tenancy está concluída, pode avançar e configurar os seus perfis SCEP com base no seu MDM.

Considerações ao ter vários tenants de destino

Se quiser ter várias instâncias do SCEPman para emitir certificados para diferentes tenants de destino, deverá tomar medidas de configuração adicionais para isolar estas instâncias umas das outras.

Um conceito possível poderia incluir um grupo de recursos de gestão que contenha um único App Service Plan que fornecerá o recurso de computação para todos os seus App Services do SCEPman. Os seguintes pontos devem ser tidos em consideração ao fazer isto para vários tenants:

  • Cada instância deve ter o seu próprio grupo de recursos para as distinguir

  • Deverá criar Registos de aplicação para cada instância para isolar as permissões

  • O App Service Plan deve ser criado num grupo de recursos de gestão independente, uma vez que serve várias instâncias

Neste diagrama, um tenant de gestão e as suas duas instâncias do SCEPman fornecem certificados aos tenants da Contoso e da Tailwind:

Adicionar uma nova instância do SCEPman a um App Service Plan existente

Ao implementar uma nova instância do SCEPman usando o método de implementação empresarial é-lhe oferecida a possibilidade de introduzir o ID do recurso de um App Service Plan existente ao qual esta instância deve ser adicionada.

Este ID do recurso pode ser encontrado nas propriedades do App Service Plan existente:

Criar registos de aplicação específicos do cliente

Para isolar as permissões das aplicações, terá de ajustar o comando pós-implementação para especificar Registos de aplicação personalizados:

Este comando resultará numa instância do SCEPman totalmente configurada e isolada das instâncias anteriores. Agora pode avançar para configurar a split-tenancy desta instância.

A secção acima relativa ao Certificate Master pode agora ser aplicada opcionalmente, se quiser que este serviço esteja acessível a partir do tenant do cliente.

Última atualização

Isto foi útil?