Visão geral dos fornecedores de identidade para o Azure Stack HubOverview of identity providers for Azure Stack Hub

O Azure Stack Hub requer a Azure Ative Directory (Azure AD) ou o Ative Directory Federation Services (AD FS), apoiado pelo Ative Directory como fornecedor de identidade.Azure Stack Hub requires Azure Active Directory (Azure AD) or Active Directory Federation Services (AD FS), backed by Active Directory as an identity provider. A escolha de um fornecedor é uma decisão única que se tomam quando implementamos o Azure Stack Hub pela primeira vez.The choice of a provider is a one-time decision that you make when you first deploy Azure Stack Hub. Os conceitos e detalhes de autorização neste artigo podem ajudá-lo a escolher entre fornecedores de identidade.The concepts and authorization details in this article can help you choose between identity providers.

A sua escolha de Azure AD ou AD FS é determinada pelo modo em que implementa O Azure Stack Hub:Your choice of either Azure AD or AD FS is determined by the mode in which you deploy Azure Stack Hub:

  • Quando o implantar num modo ligado, pode utilizar a Azure AD ou a AD FS.When you deploy it in a connected mode, you can use either Azure AD or AD FS.
  • Quando o implementa num modo desligado, sem ligação à internet, apenas o AD FS é suportado.When you deploy it in a disconnected mode, without a connection to the internet, only AD FS is supported.

Para obter mais informações sobre as suas opções, que dependem do ambiente Azure Stack Hub, consulte os seguintes artigos:For more information about your options, which depend on your Azure Stack Hub environment, see the following articles:

Conceitos comuns para fornecedores de identidadeCommon concepts for identity providers

As próximas secções discutem conceitos comuns sobre fornecedores de identidade e a sua utilização no Azure Stack Hub.The next sections discuss common concepts about identity providers and their use in Azure Stack Hub.

Terminologia para fornecedores de identidade

Inquilinos e organizações de diretóriosDirectory tenants and organizations

Um diretório é um contentor que contém informações sobre utilizadores, aplicações, grupose diretores de serviços.A directory is a container that holds information about users, applications, groups, and service principals.

Um inquilino de diretório é uma organização, como a Microsoft ou a sua própria empresa.A directory tenant is an organization, such as Microsoft or your own company.

  • O Azure AD suporta vários inquilinos e pode suportar múltiplas organizações, cada uma no seu diretório.Azure AD supports multiple tenants, and it can support multiple organizations, each in its own directory. Se você usar Azure AD e tiver vários inquilinos, você pode conceder apps e utilizadores de um inquilino acesso a outros inquilinos desse mesmo diretório.If you use Azure AD and have multiple tenants, you can grant apps and users from one tenant access to other tenants of that same directory.
  • A AD FS apoia apenas um único inquilino e, portanto, apenas uma organização.AD FS supports only a single tenant and, therefore, only a single organization.

Utilizadores e gruposUsers and groups

As contas de utilizador (identidades) são contas padrão que autenticam indivíduos utilizando um ID do utilizador e uma palavra-passe.User accounts (identities) are standard accounts that authenticate individuals by using a user ID and password. Os grupos podem incluir utilizadores ou outros grupos.Groups can include users or other groups.

A forma como cria e gere utilizadores e grupos depende da solução de identidade que utiliza.How you create and manage users and groups depends on the identity solution you use.

No Azure Stack Hub, contas de utilizador:In Azure Stack Hub, user accounts:

  • São criados no formato de utilizador do * @ domínio.*Are created in the username@domain format. Embora o AD FS mapeia as contas dos utilizadores para uma instância do Ative Directory, a AD FS não suporta o uso do \<domain>\<alias> formato.Although AD FS maps user accounts to an Active Directory instance, AD FS doesn't support the use of the \<domain>\<alias> format.
  • Pode ser configurado para utilizar a autenticação de vários fatores.Can be set up to use multi-factor authentication.
  • Limitam-se ao diretório onde se registam pela primeira vez, que é o diretório da sua organização.Are restricted to the directory where they first register, which is their organization's directory.
  • Pode ser importado dos seus diretórios no local.Can be imported from your on-premises directories. Para mais informações, consulte Integrar os seus diretórios no local com o Azure Ative Directory.For more information, see Integrate your on-premises directories with Azure Active Directory.

Quando iniciar sôs o seu sôm. * / *When you sign in to your organization's user portal, you use the https://portal.local.azurestack.external URL. Ao iniciar a sessão no portal Azure Stack Hub a partir de domínios que não o utilizado para registar o Azure Stack Hub, o nome de domínio utilizado para registar o Azure Stack Hub deve ser anexado ao url do portal.When signing into the Azure Stack Hub portal from domains other than the one used to register Azure Stack Hub, the domain name used to register Azure Stack Hub must be appended to the portal url. Por exemplo, se o Azure Stack Hub tiver sido registado com fabrikam.onmicrosoft.com e a conta de utilizador estiver admin@contoso.com em sessão, o URL a utilizar para iniciar sessão no portal do utilizador será: https: / /portal.local.azurestack.external/fabrikam.onmicrosoft.com.For example, if Azure Stack Hub has been registered with fabrikam.onmicrosoft.com and the user account logging in is admin@contoso.com, the URL to use to log into the user portal would be: https://portal.local.azurestack.external/fabrikam.onmicrosoft.com.

Utilizadores convidadosGuest users

Os utilizadores convidados são contas de utilizadores de outros inquilinos do diretório que tiveram acesso a recursos no seu diretório.Guest users are user accounts from other directory tenants that have been granted access to resources in your directory. Para suportar utilizadores convidados, utiliza Azure AD e permite suporte para vários arrendamentos.To support guest users, you use Azure AD and enable support for multi-tenancy. Quando o suporte está ativado, pode convidar os utilizadores convidados a acederem aos recursos no seu inquilino de diretório, o que por sua vez permite a sua colaboração com organizações externas.When support is enabled, you can invite guest users to access resources in your directory tenant, which in turn enables their collaboration with outside organizations.

Para convidar utilizadores convidados, operadores de nuvem e utilizadores podem utilizar a colaboração Azure AD B2B.To invite guest users, cloud operators and users can use Azure AD B2B collaboration. Os utilizadores convidados têm acesso a documentos, recursos e aplicações do seu diretório, e mantêm o controlo sobre os seus próprios recursos e dados.Invited users get access to documents, resources, and apps from your directory, and you maintain control over your own resources and data.

Como utilizador convidado, pode inscrever-se no inquilino de outra organização.As a guest user, you can sign in to another organization's directory tenant. Para tal, você anexa o nome do diretório dessa organização ao URL do portal.To do so, you append that organization's directory name to the portal URL. Por exemplo, se pertencer à organização Contoso e quiser inscrever-se no diretório de Fabrikam, utilize https: / /portal.local.azurestack.external/fabrikam.onmicrosoft.com.For example, if you belong to the Contoso organization and want to sign in to the Fabrikam directory, you use https://portal.local.azurestack.external/fabrikam.onmicrosoft.com.

AplicaçõesApps

Pode registar aplicações para Azure AD ou AD FS e, em seguida, oferecer as aplicações aos utilizadores da sua organização.You can register apps to Azure AD or AD FS, and then offer the apps to users in your organization.

As aplicações incluem:Apps include:

  • Aplicações web: Os exemplos incluem o portal Azure e o Azure Resource Manager.Web apps: Examples include the Azure portal and Azure Resource Manager. Eles suportam chamadas web API.They support Web API calls.
  • Cliente nativo: Exemplos incluem Azure PowerShell, Visual Studio e Azure CLI.Native client: Examples include Azure PowerShell, Visual Studio, and Azure CLI.

As aplicações podem suportar dois tipos de arrendamento:Apps can support two types of tenancy:

  • Inquilino único: Suporta utilizadores e serviços apenas a partir do mesmo diretório onde a aplicação está registada.Single-tenant: Supports users and services only from the same directory where the app is registered.

    Nota

    Como a AD FS suporta apenas um único diretório, as aplicações que você cria em uma topologia AD FS são, por design, aplicações de inquilino único.Because AD FS supports only a single directory, apps you create in an AD FS topology are, by design, single-tenant apps.

  • Multi-inquilino: Suporta a utilização por utilizadores e serviços tanto do diretório onde a aplicação está registada como de diretórios de inquilinos adicionais.Multi-tenant: Supports use by users and services from both the directory where the app is registered and additional tenant directories. Com aplicações multi-inquilinos, os utilizadores de outro diretório de inquilinos (outro inquilino Azure AD) podem iniciar sação na sua app.With multi-tenant apps, users of another tenant directory (another Azure AD tenant) can sign in to your app.

    Para obter mais informações sobre o multi-arrendamento, consulte Ativar o multi-arrendamento.For more information about multi-tenancy, see Enable multi-tenancy.

    Para obter mais informações sobre o desenvolvimento de uma app multi-inquilino, consulte aplicações multi-inquilinos.For more information about developing a multi-tenant app, see Multi-tenant apps.

Quando regista uma aplicação, cria-se dois objetos:When you register an app, you create two objects:

  • Objeto de aplicação: A representação global da app em todos os inquilinos.Application object: The global representation of the app across all tenants. Esta relação é um para um com a aplicação de software e existe apenas no diretório onde a aplicação é registada pela primeira vez.This relationship is one-to-one with the software app and exists only in the directory where the app is first registered.

  • Objeto principal do serviço: uma credencial que é criada para uma aplicação no diretório onde a aplicação é registada pela primeira vez.Service principal object: A credential that's created for an app in the directory where the app is first registered. Um diretor de serviço também é criado no diretório de cada inquilino adicional onde essa aplicação é usada.A service principal is also created in the directory of each additional tenant where that app is used. Esta relação pode ser de um para muitos com a aplicação de software.This relationship can be one-to-many with the software app.

Para saber mais sobre aplicações e objetos principais de serviço, consulte aplicações e objetos principais de serviço no Azure Ative Directory.To learn more about app and service principal objects, see Application and service principal objects in Azure Active Directory.

Principais de serviçoService principals

Um diretor de serviço é um conjunto de credenciais para uma app ou serviço que concedem acesso a recursos no Azure Stack Hub.A service principal is a set of credentials for an app or service that grant access to resources in Azure Stack Hub. O uso de um diretor de serviço separa as permissões da aplicação das permissões do utilizador da aplicação.The use of a service principal separates the app permissions from the permissions of the user of the app.

Um diretor de serviço é criado em cada inquilino onde a app é usada.A service principal is created in each tenant where the app is used. O diretor de serviço estabelece uma identidade para a inscrição e acesso a recursos (como utilizadores) que são garantidos por esse inquilino.The service principal establishes an identity for sign-in and access to resources (such as users) that are secured by that tenant.

  • Uma aplicação de inquilino único tem apenas um diretor de serviço, que está no diretório onde é criado pela primeira vez.A single-tenant app has only one service principal, which is in the directory where it's first created. Este responsável de serviço é criado e consente em ser utilizado durante o registo da app.This service principal is created and consents to being used during registration of the app.
  • Uma aplicação web multi-inquilino ou API tem um principal serviço que é criado em cada inquilino onde um utilizador desse inquilino consente com o uso da app.A multi-tenant web app or API has a service principal that's created in each tenant where a user from that tenant consents to the use of the app.

As credenciais para os principais serviços podem ser uma chave que é gerada através do portal Azure ou um certificado.Credentials for service principals can be either a key that's generated through the Azure portal or a certificate. A utilização de um certificado é adequada para automatização porque os certificados são considerados mais seguros do que as chaves.The use of a certificate is suited for automation because certificates are considered more secure than keys.

Nota

Quando utiliza O FS AD com Azure Stack Hub, apenas o administrador pode criar principais serviços.When you use AD FS with Azure Stack Hub, only the administrator can create service principals. Com a AD FS, os principais de serviço requerem certificados e são criados através do ponto final privilegiado (PEP).With AD FS, service principals require certificates and are created through the privileged endpoint (PEP). Para obter mais informações, consulte utilizar uma identidade de aplicação para aceder aos recursos.For more information, see Use an app identity to access resources.

Para saber mais sobre os principais serviços do Azure Stack Hub, consulte os principais de serviços Create.To learn about service principals for Azure Stack Hub, see Create service principals.

ServiçosServices

Os serviços no Azure Stack Hub que interagem com o fornecedor de identidade estão registados como aplicações com o fornecedor de identidade.Services in Azure Stack Hub that interact with the identity provider are registered as apps with the identity provider. Tal como as aplicações, o registo permite que um serviço autense com o sistema de identidade.Like apps, registration enables a service to authenticate with the identity system.

Todos os serviços Azure utilizam protocolos OpenID Connect e Tokens Web JSON para estabelecer a sua identidade.All Azure services use OpenID Connect protocols and JSON Web Tokens to establish their identity. Uma vez que o Azure AD e o AD FS utilizam protocolos de forma consistente, pode utilizar a Azure Ative Directory Authentication Library (ADAL) para autenticar no local ou no Azure (num cenário ligado).Because Azure AD and AD FS use protocols consistently, you can use Azure Active Directory Authentication Library (ADAL) to authenticate on-premises or to Azure (in a connected scenario). Com o ADAL, também pode utilizar ferramentas como a Azure PowerShell e a Azure CLI para a gestão de recursos em nuvem cruzada e no local.With ADAL, you can also use tools such as Azure PowerShell and Azure CLI for cross-cloud and on-premises resource management.

Identidades e o seu sistema de identidadeIdentities and your identity system

As identidades do Azure Stack Hub incluem contas de utilizadores, grupos e diretores de serviço.Identities for Azure Stack Hub include user accounts, groups, and service principals.

Ao instalar o Azure Stack Hub, várias aplicações e serviços incorporados registam-se automaticamente com o seu fornecedor de identidade no inquilino do diretório.When you install Azure Stack Hub, several built-in apps and services automatically register with your identity provider in the directory tenant. Alguns serviços que se registam são utilizados para administração.Some services that register are used for administration. Outros serviços estão disponíveis para os utilizadores.Other services are available for users. Os registos predefinidos dão identidades de serviços fundamentais que podem interagir entre si e com identidades que adiciona mais tarde.The default registrations give core services identities that can interact both with each other and with identities that you add later.

Se configurar o Azure AD com vários arrendamentos, algumas aplicações propagam-se aos novos diretórios.If you set up Azure AD with multi-tenancy, some apps propagate to the new directories.

Autenticação e autorizaçãoAuthentication and authorization

Autenticação por apps e utilizadoresAuthentication by apps and users

Identidade entre camadas de Azure Stack Hub

Para apps e utilizadores, a arquitetura do Azure Stack Hub é descrita por quatro camadas.For apps and users, the architecture of Azure Stack Hub is described by four layers. As interações entre cada uma destas camadas podem utilizar diferentes tipos de autenticação.Interactions between each of these layers can use different types of authentication.

CamadaLayer Autenticação entre camadasAuthentication between layers
Ferramentas e clientes, como o portal do administradorTools and clients, such as the administrator portal Para aceder ou modificar um recurso no Azure Stack Hub, ferramentas e clientes usam um Token Web JSON para fazer uma chamada para o Azure Resource Manager.To access or modify a resource in Azure Stack Hub, tools and clients use a JSON Web Token to place a call to Azure Resource Manager.
O Azure Resource Manager valida o JSON Web Token e espreita as reclamações no token emitido para estimar o nível de autorização que o utilizador ou diretor de serviço tem no Azure Stack Hub.Azure Resource Manager validates the JSON Web Token and peeks at the claims in the issued token to estimate the level of authorization that user or service principal has in Azure Stack Hub.
Gestor de Recursos Azure e seus serviços principaisAzure Resource Manager and its core services O Azure Resource Manager comunica com os fornecedores de recursos para transferir a comunicação dos utilizadores.Azure Resource Manager communicates with resource providers to transfer communication from users.
As transferências utilizam chamadas imperativas diretas ou chamadas declarativas através de modelos do Gestor de Recursos Azure.Transfers use direct imperative calls or declarative calls via Azure Resource Manager templates.
Fornecedores de recursosResource providers As chamadas passadas aos fornecedores de recursos são asseguradas com autenticação baseada em certificados.Calls passed to resource providers are secured with certificate-based authentication.
O Gestor de Recursos Azure e o fornecedor de recursos permanecem em comunicação através de uma API.Azure Resource Manager and the resource provider then stay in communication through an API. Para cada chamada recebida do Azure Resource Manager, o fornecedor de recursos valida a chamada com esse certificado.For every call that's received from Azure Resource Manager, the resource provider validates the call with that certificate.
Infraestrutura e lógica de negócioInfrastructure and business logic Os fornecedores de recursos comunicam com a lógica e infraestrutura do negócio utilizando um modo de autenticação à sua escolha.Resource providers communicate with business logic and infrastructure by using an authentication mode of their choice. Os fornecedores de recursos predefinidos que enviam com o Azure Stack Hub utilizam a Autenticação do Windows para garantir esta comunicação.The default resource providers that ship with Azure Stack Hub use Windows Authentication to secure this communication.

Informação necessária para a autenticação

Autenticar para Azure Resource ManagerAuthenticate to Azure Resource Manager

Para autenticar com o fornecedor de identidade e receber um Token Web JSON, deve ter as seguintes informações:To authenticate with the identity provider and receive a JSON Web Token, you must have the following information:

  1. URL para o sistema de identidade (Autoridade): O URL no qual o seu fornecedor de identidade pode ser alcançado.URL for the identity system (Authority): The URL at which your identity provider can be reached. Por exemplo, https: / /login.windows.net.For example, https://login.windows.net.
  2. App ID URI para Azure Resource Manager: O identificador exclusivo do Azure Resource Manager que está registado no seu fornecedor de identidade.App ID URI for Azure Resource Manager: The unique identifier for Azure Resource Manager that's registered with your identity provider. Também é único em cada instalação do Azure Stack Hub.It's also unique to each Azure Stack Hub installation.
  3. Credenciais: A credencial que utiliza para autenticar com o fornecedor de identidade.Credentials: The credential you use to authenticate with the identity provider.
  4. URL para Azure Resource Manager: O URL é a localização do serviço Azure Resource Manager.URL for Azure Resource Manager: The URL is the location of the Azure Resource Manager service. Por exemplo, https: / /management.azure.com ou https: / /management.local.azurestack.external.For example, https://management.azure.com or https://management.local.azurestack.external.

Quando um principal (um cliente, apps ou utilizador) faz um pedido de autenticação para aceder a um recurso, o pedido deve incluir:When a principal (a client, apps, or user) makes an authentication request to access a resource, the request must include:

  • As credenciais do diretor.The principal's credentials.
  • A aplicação ID URI do recurso a que o diretor quer aceder.The app ID URI of the resource that the principal wants to access.

As credenciais são validadas pelo fornecedor de identidade.The credentials are validated by the identity provider. O fornecedor de identidade também valida que a app ID URI é para uma aplicação registada, e que o principal tem os privilégios corretos para obter um símbolo para esse recurso.The identity provider also validates that the app ID URI is for a registered app, and that the principal has the correct privileges to obtain a token for that resource. Se o pedido for válido, é concedido um Token Web JSON.If the request is valid, a JSON Web Token is granted.

O token deve então passar no cabeçalho de um pedido ao Azure Resource Manager.The token must then pass in the header of a request to Azure Resource Manager. A Azure Resource Manager faz o seguinte, sem ordem específica:Azure Resource Manager does the following, in no specific order:

  • Valida a alegação do emitente (iss) para confirmar que o token é do fornecedor de identidade correto.Validates the issuer (iss) claim to confirm that the token is from the correct identity provider.
  • Valida a alegação do público (aud) para confirmar que o token foi emitido ao Azure Resource Manager.Validates the audience (aud) claim to confirm that the token was issued to Azure Resource Manager.
  • Valida que o JSON Web Token é assinado com um certificado configurado através do OpenID e conhecido pelo Azure Resource Manager.Validates that the JSON Web Token is signed with a certificate that's configured through OpenID and known to Azure Resource Manager.
  • Reveja as alegações emitidas em (iat) e expiração (exp) para confirmar que o token está ativo e pode ser aceite.Review the issued at (iat) and expiration (exp) claims to confirm that the token is active and can be accepted.

Quando todas as validações estão concluídas, o Azure Resource Manager utiliza o id de objeto (oid) e os grupos afirmam fazer uma lista de recursos a que o principal pode aceder.When all validations are complete, Azure Resource Manager uses the object id (oid) and the groups claims to make a list of resources that the principal can access.

Diagrama do protocolo de troca simbólica

Nota

Após a implementação, a permissão do administrador global do Azure Ative Directory não é necessária.After deployment, Azure Active Directory global administrator permission isn't required. No entanto, algumas operações podem exigir as credenciais de administração global (por exemplo, um script de instalador de recursos ou um novo recurso que exija uma permissão para ser concedido).However, some operations may require the global admin credentials (for example, a resource provider installer script or a new feature requiring a permission to be granted). Pode reintegrar temporariamente as permissões de administração global da conta ou utilizar uma conta de administração global separada que seja proprietária da subscrição do fornecedor predefinido.You can either temporarily re-instate the account's global admin permissions or use a separate global admin account that's an owner of the default provider subscription.

Use o controlo de acesso baseado em funçõesUse Role-Based Access Control

O Controle de Acesso Baseado em Fun (RBAC) no Azure Stack Hub é consistente com a implementação no Microsoft Azure.Role-Based Access Control (RBAC) in Azure Stack Hub is consistent with the implementation in Microsoft Azure. Você pode gerir o acesso aos recursos atribuindo o papel apropriado do RBAC aos utilizadores, grupos e aplicações.You can manage access to resources by assigning the appropriate RBAC role to users, groups, and apps. Para obter informações sobre como utilizar o RBAC com o Azure Stack Hub, consulte os seguintes artigos:For information about how to use RBAC with Azure Stack Hub, see the following articles:

Autenticar com o Azure PowerShellAuthenticate with Azure PowerShell

Os detalhes sobre a utilização do Azure PowerShell para autenticar com o Azure Stack Hub podem ser encontrados no ambiente PowerShell do utilizador do Azure Stack Hub.Details about using Azure PowerShell to authenticate with Azure Stack Hub can be found at Configure the Azure Stack Hub user's PowerShell environment.

Autenticar com Azure CLIAuthenticate with Azure CLI

Para obter informações sobre a utilização do Azure PowerShell para autenticar com o Azure Stack Hub, consulte instalar e configurar o Azure CLI para utilização com o Azure Stack Hub.For information about using Azure PowerShell to authenticate with Azure Stack Hub, see Install and configure Azure CLI for use with Azure Stack Hub.

Passos seguintesNext steps