Partilhar via


Contas de Microsoft Entra partilhadas no HoloLens

As contas de Microsoft Entra partilhadas (anteriormente do Azure Active Directory) no HoloLens são contas de utilizador Microsoft Entra regulares que podem iniciar sessão no HoloLens sem precisar de credenciais. Esta configuração é ideal para cenários em que as seguintes condições são verdadeiras:

  • Várias pessoas partilham o mesmo conjunto de dispositivos HoloLens
  • É necessário o acesso aos recursos Microsoft Entra, como o conteúdo dos Guias de Dynamics 365
  • Não é necessário controlar quem utilizou o dispositivo.

Principais benefícios da utilização de contas de Microsoft Entra partilhadas

  • Implementação simplificada. Anteriormente, a configuração Microsoft Entra contas partilhadas entre várias pessoas exigia a configuração manual de cada dispositivo. As contas de Microsoft Entra partilhadas permitem-lhe configurar o seu ambiente uma vez e implementar automaticamente em qualquer um dos seus dispositivos como parte do Autopilot.
  • Excelente experiência de utilizador. Os utilizadores de contas Microsoft Entra partilhadas não têm de introduzir credenciais para começar a utilizar o dispositivo. Toque e vá!
  • Acesso a recursos de Microsoft Entra. Os utilizadores de contas de Microsoft Entra partilhadas têm acesso fácil a recursos Microsoft Entra para que possa iniciar uma chamada de Assistência Remota ou abrir um Guia sem autenticação extra.

Importante

Uma vez que as contas Microsoft Entra partilhadas podem ser acedidas no dispositivo HoloLens sem introduzir credenciais, deve proteger fisicamente estes dispositivos HoloLens para que apenas o pessoal autorizado tenha acesso. Também pode querer bloquear estas contas ao aplicar políticas de acesso condicional, desativar a reposição personalizada de palavra-passe e configurar perfis de acesso atribuídos aos dispositivos onde estas contas são utilizadas.

Nota

Uma vez que estas são contas partilhadas, os utilizadores que utilizam estas contas não são apresentados os ecrãs típicos de configuração do primeiro início de sessão, incluindo inscrições de PIN e íris, aviso de recolha de dados biométricos e vários ecrãs de consentimento. Deve garantir que as predefinições adequadas estão configuradas para estas contas através da política (consulte Configurar utilizadores no HoloLens 2 rapidamente) e que os seus utilizadores estão cientes destas predefinições.

Limitações conhecidas de contas de Microsoft Entra partilhadas

  • As contas de Microsoft Entra partilhadas não podem utilizar PIN ou íris para iniciar sessão na versão atual, mesmo que tenham sido inscritas.

Descrição Geral Conceptual das Contas de Microsoft Entra Partilhadas

Este processo permite que um dispositivo HoloLens seja alocado a uma conta de utilizador e inicie sessão nessa conta de utilizador com credenciais ligadas ao dispositivo e apenas ao dispositivo. A imagem descreve o processo:

Diagrama de Conta Partilhada

  1. O Intune tem um perfil de Configuração SCEP para o Serviço SCEP.
  2. O dispositivo associa-se ao Intune e recebe as informações do perfil.
  3. O dispositivo contacta o Serviço SCEP e recebe um certificado de dispositivo, com um UPN de HL-{Serial}@contoso.com.
  4. O dispositivo inicia sessão na conta de utilizador corrosponding no Entra ID, utilizando o certificado como MFA, para proporcionar uma experiência de início de sessão totalmente integrada.

Não é possível remover/exportar o certificado do dispositivo e a conta de utilizador está configurada sem qualquer outra forma de MFA disponível. Esta configuração garante que a conta partilhada só pode ser iniciada pelo dispositivo HoloLens.

Descrição geral dos passos para configurar contas de Microsoft Entra partilhadas

As contas de Microsoft Entra partilhadas no HoloLens são implementadas como contas de utilizador Microsoft Entra regulares configuradas para autenticação baseada em certificados (CBA) Microsoft Entra.

Num nível elevado, a configuração de contas de Microsoft Entra partilhadas inclui os seguintes passos:

  1. (Recomendado) Configure os seus dispositivos de destino para associar Microsoft Entra e inscrever-se no Intune com o Autopilot.
  2. Configure o seu inquilino Microsoft Entra para ativar Microsoft Entra CBA para um grupo de contas selecionado.
  3. Configure Microsoft Intune para aplicar configurações de dispositivos a um grupo selecionado de dispositivos que:
    1. Implemente certificados de cliente utilizados para Microsoft Entra CBA nos dispositivos através dos perfis de certificado SCEP do Intune.
    2. Implemente o certificado de AC para que os dispositivos confiem no emissor dos certificados de cliente.
    3. Implemente a configuração da conta partilhada a indicar ao dispositivo quais os certificados válidos para Microsoft Entra CBA.
  4. Prepara dispositivos individuais para contas de Microsoft Entra partilhadas.

Pré-requisitos

O suporte de conta Microsoft Entra partilhado está disponível a partir da pré-visualização do Insider para Microsoft HoloLens compilação 10.0.22621.1217.

Além de ter o sistema operativo necessário criado no HoloLens, também tem de satisfazer os pré-requisitos para Microsoft Entra CBA (Como configurar Microsoft Entra autenticação baseada em certificados).

Por fim, precisa de acesso a Microsoft Intune para implementar configurações de dispositivos e certificados de cliente. Para obter a infraestrutura necessária para implementar certificados de cliente através do Intune, veja Saiba mais sobre os tipos de certificado suportados pelo Microsoft Intune. Neste exemplo, utilizamos certificados SCEP.

Nota

Estão disponíveis várias opções para implementar certificados SCEP, incluindo o Microsoft NDES e o PKI. Para o HoloLens, pode ser mais simples utilizar um serviço do Azure para processar a inscrição de certificados. Estão disponíveis várias opções no (Azure Marketplace, o que permite que as configurações das contas microsft Entra partilhadas do HoloLens sejam isoladas da sua PKI empresarial.

Os principais requisitos do serviço SCEP são:

  1. O serviço pode aceitar pedidos de certificado de dispositivo de Microsoft Intune.
  2. O serviço pode gerar certificados com EKU definido (Autenticação de Cliente e Início de Sessão do Smart Card).

É altamente recomendado configurar os seus dispositivos para o Autopilot. O Autopilot simplifica a experiência de configuração do dispositivo para os utilizadores finais.

Configurar o inquilino do Microsoft Entra para ativar Microsoft Entra CBA

O inquilino Microsoft Entra tem de ser configurado para ativar Microsoft Entra CBA para um grupo de utilizadores selecionado.

  1. Crie um grupo de Microsoft Entra que contenha as contas de Microsoft Entra partilhadas. Por exemplo, utilizamos o nome "SharedAccounts" para este grupo.
  2. Crie um grupo Microsoft Entra que contenha os dispositivos HoloLens partilhados. Por exemplo, utilizamos o nome "SharedDevices" para este grupo. Este grupo é atribuído aos perfis de configuração do Intune baseados em dispositivos mais tarde.
  3. Ative Microsoft Entra autenticação baseada em certificados (CBA) para o grupo SharedAccounts. Para obter um guia passo a passo completo, veja Como configurar a autenticação baseada em certificados Microsoft Entra. São necessários os seguintes passos de alto nível para configurar esta opção:
    1. Adicione o certificado de AC (Autoridade de Certificação) ao Microsoft Entra. Microsoft Entra ID permite que os certificados de cliente emitidos por esta AC executem o CBA.
    2. Ative a CBA para o grupo "SharedAccounts".
    3. Configure a CBA de modo a que o certificado emitido pela SUA AC utilize mFA. Este passo consiste em garantir que os utilizadores podem aceder a recursos que necessitam de MFA sem configurar outro fator.
    4. Ative o enlace de certificado através do UserPrincipalName.

Configuração do Intune

O Intune tem de ser configurado para implementar os certificados necessários para Microsoft Entra CBA. O Intune também tem de implementar uma configuração para instruir os dispositivos que certificados são válidos para Microsoft Entra CBA.

Implementação de certificados de cliente através do SCEP

Os dispositivos têm de ter o certificado de cliente adequado para executar Microsoft Entra CBA. Crie uma configuração SCEP e atribua-a a "SharedDevices":

  1. Tipo de certificado: Dispositivo

  2. Adicione um nome principal de utilizador (UPN) Nome alternativo do requerente (SAN) em que o valor é o UPN da conta partilhada atribuída ao dispositivo. O UPN tem de conter o número de série do dispositivo para o associar a um dispositivo. Pode utilizar a variável do Intune {{Device_Serial}} para fazer referência ao número de série do dispositivo. Por exemplo, introduza um valor de HL-{{Device_Serial}}@contoso.com se as contas partilhadas tiverem um formato de nome de HL-123456789@contoso.com.

  3. Fornecedor de armazenamento de chaves (KSP): selecione "Exigir TPM, caso contrário, falha" para garantir que o certificado não pode ser exportado do dispositivo para ser utilizado noutro local.

  4. Certifique-se de que o certificado tem, pelo menos, as seguintes utilizações de chaves expandidas (EKUs):

    • Início de Sessão do Smartcard: 1.3.6.1.4.1.311.20.2.2
    • Autenticação de Cliente: 1.3.6.1.5.5.7.3.2

    Pode adicionar outras EKUs a esta lista para restringir ainda mais os certificados permitidos para Microsoft Entra CBA. Tem de adicionar estes EKUs à política XML for ConfigureSharedAccount.

Configuração do SCEP de exemplo

Para obter passos detalhados sobre como configurar o SCEP no Intune, veja Utilizar perfis de certificado SCEP com Microsoft Intune.

Implementação de certificados de AC

Os dispositivos também têm de confiar na AC que emitiu o certificado de cliente. Crie uma configuração de certificado fidedigna e atribua-a ao grupo "SharedDevices". Esta atribuição implementa o certificado de AC nos dispositivos. Veja a documentação: Criar perfis de certificado fidedignos no Microsoft Intune.

Configurar a políticaSharedAccount

Esta política indica aos dispositivos que certificados são válidos para serem utilizados para Microsoft Entra CBA. Crie uma política de configuração de dispositivos personalizada e atribua-a a "SharedDevices":

Política Tipo de Dados
./Vendor/MSFT/Policy/Config/MixedReality/ConfigureSharedAccount Cadeia ou Cadeia (ficheiro XML)

Configuração de exemplo:

<SharedAccountConfiguration>
    <SharedAccount>
        <!--
          TODO: Replace the example value below with your issuer certificate's thumbprint.
          You may customize the restrictions for which certificates are displayed. See below.
        -->
        <IssuerThumbprint>77de0879f69314d867bd08fcf2e8e6616548b3c8</IssuerThumbprint>
    </SharedAccount>
</SharedAccountConfiguration>

Pode personalizar as restrições para as quais os certificados são apresentados para Microsoft Entra CBA. O exemplo acima requer que o thumbprint do certificado do emissor corresponda ao valor fornecido. Também é possível aplicar a restrição com base no nome do emissor ou aplicar mais restrições com base nas EKUs (Extended Key Usages) no certificado. Veja ConfigureSharedAccount XML Examples (Configurar Exemplos XMLsharedAccount ) para obter exemplos sobre como configurar o XML.

Antes de guardar esta configuração do dispositivo, valide o XML em relação ao esquema especificado em Configurar Esquema XMLSharedAccount para garantir que está bem formado.

Configuração de dispositivos individuais

Para cada dispositivo HoloLens que pretende configurar para contas de Microsoft Entra partilhadas, execute os seguintes passos:

  1. Crie um utilizador Microsoft Entra no formato especificado no passo 2 da implementação do certificado de cliente através do SCEP. Por exemplo: HL-123456789@contoso.com.
  2. Adicione esse utilizador ao grupo "SharedAccounts".
  3. Certifique-se de que o dispositivo é adicionado ao grupo "SharedDevices". Deve configurar primeiro os seus dispositivos para o Autopilot, para que já estejam presentes no Microsoft Entra.

Veja Script de configuração de dispositivos de exemplo para obter um exemplo de um script do PowerShell que pode ser utilizado para automatizar este processo.

Testar a configuração

Depois de concluir a configuração acima, estará pronto para experimentar contas Microsoft Entra partilhadas no HoloLens!

Se o seu dispositivo já estiver configurado para o Autopilot, utilize o dispositivo através do fluxo normal do Autopilot. As configurações de dispositivo necessárias são aplicadas durante o Autopilot. Assim que o fluxo do Autopilot estiver concluído, verá o seguinte ecrã:

Ecrã de início de sessão a mostrar a conta partilhada

Toque no botão "Iniciar sessão" para começar a utilizar a conta de Microsoft Entra partilhada.

Resolução de problemas

Problema: a conta de Microsoft Entra partilhada não está a ser apresentada no ecrã de início de sessão!

Solução: Primeiro, verifique se o dispositivo está a receber os certificados corretos. Abra o gestor de certificados (Gestor de Certificados) e certifique-se de que o certificado de cliente e os certificados de AC são implementados com êxito no dispositivo.

Para o certificado de cliente, certifique-se de que está instalado no arquivo "O meu" em "Máquina Local".

Gestor de certificados a mostrar a localização do certificado

Se o certificado não estiver presente, siga os passos de resolução de problemas para perfis SCEP do Intune.

Se o certificado estiver presente, certifique-se de que o certificado está dentro das datas de validade com o emissor esperado e as EKUs:

Gestor de certificados a mostrar as propriedades do certificado

Em seguida, certifique-se de que o valor da política XML que aplicou a MixedReality/ConfigureSharedAccount está bem formado. Pode utilizar um dos muitos validadores de esquema XML (XSD) online para verificar se o XML está em conformidade com o esquema descrito em Configurar Esquema XMLSharedAccount.

Problema: a tentativa de início de sessão falha!

Solução: Verifique se configurou corretamente o CBA ao seguir as instruções sobre Como configurar Microsoft Entra autenticação baseada em certificados. Além disso, consulte as FAQ sobre Microsoft Entra FAQ sobre autenticação baseada em certificados (CBA). Por vezes, pode ser útil experimentar estes passos de depuração num dispositivo de ambiente de trabalho do Windows primeiro: início de sessão de smart card do Windows com Microsoft Entra autenticação baseada em certificados.

Referências

Configurar o Esquema XMLSharedAccount

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <xsd:element name="SharedAccountConfiguration">
    <xsd:complexType mixed="true">
      <xsd:sequence>
        <xsd:element minOccurs="1" maxOccurs="1" name="SharedAccount">
          <xsd:complexType>
            <xsd:sequence>
              <xsd:choice>
                <xsd:element name="IssuerThumbprint">
                  <xsd:simpleType>
                    <xsd:restriction base="xsd:string">
                      <xsd:maxLength value="40" />
                    </xsd:restriction>
                  </xsd:simpleType>
                </xsd:element>
                <xsd:element name="IssuerName">
                  <xsd:simpleType>
                    <xsd:restriction base="xsd:string">
                      <xsd:maxLength value="512" />
                    </xsd:restriction>
                  </xsd:simpleType>
                </xsd:element>
              </xsd:choice>
              <xsd:element minOccurs="0" maxOccurs="1" name="EkuOidRequirements">
                <xsd:complexType>
                  <xsd:sequence>
                    <xsd:element maxOccurs="5" name="Oid">
                      <xsd:simpleType>
                        <xsd:restriction base="xsd:string">
                          <xsd:maxLength value="100" />
                        </xsd:restriction>
                      </xsd:simpleType>
                    </xsd:element>
                  </xsd:sequence>
                </xsd:complexType>
              </xsd:element>
            </xsd:sequence>
          </xsd:complexType>
        </xsd:element>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>

Configurar Exemplos XMLsharedAccount

Exigir que o certificado do emissor tenha um assunto de CN=yourCA, DC=Test:

<SharedAccountConfiguration>
    <SharedAccount>
        <IssuerName>CN=yourCA, DC=Test</IssuerName>
    </SharedAccount>
</SharedAccountConfiguration>

Exigir que o certificado do emissor tenha um thumbprint especificado:

<SharedAccountConfiguration>
    <SharedAccount>
        <IssuerThumbprint>77de0879f69314d867bd08fcf2e8e6616548b3c8</IssuerThumbprint>
    </SharedAccount>
</SharedAccountConfiguration>

Exigir que o certificado do emissor tenha um thumbprint especificado e que o certificado de cliente tenha EKUs com OIDs 1.2.3.4.5.6 e 1.2.3.4.5.7:

<SharedAccountConfiguration>
    <SharedAccount>
        <IssuerThumbprint>77de0879f69314d867bd08fcf2e8e6616548b3c8</IssuerThumbprint>
        <EkuOidRequirements>
            <Oid>1.2.3.4.5.6</Oid>
            <Oid>1.2.3.4.5.7</Oid>
        </EkuOidRequirements>
    </SharedAccount>
</SharedAccountConfiguration>

As EKUs 1.3.6.1.4.1.311.20.2.2 (Início de Sessão do Smartcard) e 1.3.6.1.5.5.7.3.2 (Autenticação de Cliente) são sempre necessárias independentemente de estarem nesta lista.

Script de configuração do dispositivo de exemplo

Antes de utilizar este script de configuração de dispositivo de exemplo, deve alterar as referências de "contoso" para o seu nome de domínio.

<#
.Synopsis
Configures a device for shared account

.Description
This script configures a device for shared account.

Note that you'll need to have the necessary permissions in your tenant to manage
user and device memberships and query Intune devices.

.Example
.\ConfigureSharedDevice.ps1 400064793157
#>


param (
    [Parameter(Mandatory = $true)]
    [string]
    # Serial number of the device. Typically a 12-digit numeric string.
    $DeviceSerialNumber,
    [string]
    # Group ID of the group that contains the shared accounts such as HL-123456789@contoso.com
    $SharedAccountGroupId,
    [string]
    # Group ID of the group that contains the shared devices
    $SharedDeviceGroupId
)

function Install-Dependencies {
    Write-Host -Foreground Cyan "Installing Dependencies..."

    if (!(Get-InstalledModule Microsoft.Graph -ErrorAction SilentlyContinue)) {
        Write-Host -Foreground Cyan "Installing Microsoft.Graph"
        Install-Module Microsoft.Graph -Scope CurrentUser -Repository 'PSGallery'
    }

    Write-Host -Foreground Cyan "Installing Dependencies... Done"
}

function New-PasswordString {
    $alphabet = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()_-=+[]{}|;:,.<>/?'
    $length = 40
    $password = ""
    for ($i = 0; $i -lt $length; $i++) {
        $password += $alphabet[(Get-Random -Minimum 0 -Maximum $alphabet.Length)]
    }

    return $password
}

function New-SharedUser {
    param (
        $UserName,
        $DisplayName
    )

    # Does user already exist?
    $searchResult = Get-MgUser -Count 1 -ConsistencyLevel eventual -Search "`"UserPrincipalName:$UserName`""

    if ($searchResult.Count -gt 0) {
        Write-Host -Foreground Cyan "$UserName exists, using existing user."
        return $searchResult
    }

    $mailNickName = $UserName.Split('@')[0];

    Write-Host -Foreground Cyan "Creating $UserName"

    $passwordProfile = @{
        Password = New-PasswordString
    }

    return New-MgUser -AccountEnabled -DisplayName $DisplayName -Country US -UsageLocation US -MailNickname $mailNickName -UserPrincipalName $UserName -PasswordProfile $passwordProfile
}

function New-SharedUserForDevice {
    param (
        $DeviceSerialNumber
    )

    $userName = "HL-$DeviceSerialNumber@contoso.onmicrosoft.com"
    $displayName = "Shared HoloLens"

    return New-SharedUser -UserName $userName -DisplayName $displayName
}

function Add-UserToGroup {
    param (
        $UserId,
        $GroupId
    )

    $groupResult = Get-MgGroup -GroupId $GroupId
    if ($groupResult.Count -eq 0) {
        throw "Failed to find user group"
    }

    Write-Host -Foreground Cyan "Adding user ($UserId) to group"
    New-MgGroupMember -GroupId $GroupId -DirectoryObjectId $UserId
}

function Get-DeviceAADId {
    param (
        $DeviceSerialNumber
    )

    $deviceResult = Get-MgDeviceManagementManagedDevice | Where-Object { $_.SerialNumber -eq $DeviceSerialNumber }

    if ($deviceResult.Count -eq 0) {
        throw "Cannot find device with serial number $DeviceSerialNumber in Intune"
    }

    $result = ($deviceResult | Select-Object -First 1).AzureAdDeviceId

    Write-Host "Found device: $result"

    return $result
}

function Add-DeviceToGroup {
    param (
        $DeviceAADId,
        $GroupId
    )

    $groupResult = Get-MgGroup -GroupId $GroupId
    if ($groupResult.Count -eq 0) {
        throw "Failed to find device group"
    }

    $deviceResult = Get-MgDevice -Count 1 -ConsistencyLevel eventual -Search "`"DeviceId:$DeviceAADId`""
    if ($deviceResult.Count -eq 0) {
        throw "Failed to find device $DeviceAADId"
    }

    Write-Host -Foreground Cyan "Adding device $($deviceResult.Id) to group"
    
    New-MgGroupMember -GroupId $GroupId -DirectoryObjectId $deviceResult.Id
}

function Register-SharedDevice {
    param (
        $DeviceSerialNumber
    )

    Install-Dependencies

    Connect-MgGraph -Scopes "User.ReadWrite.All", "Group.Read.All", "GroupMember.ReadWrite.All", "DeviceManagementManagedDevices.Read.All", "Device.ReadWrite.All"

    $deviceAADId = Get-DeviceAADId $DeviceSerialNumber
    Add-DeviceToGroup $deviceAADId $SharedDeviceGroupId

    $user = New-SharedUserForDevice $DeviceSerialNumber
    Add-UserToGroup $user.Id $SharedAccountGroupId
}

Register-SharedDevice $DeviceSerialNumber