Este tópico apresenta um exemplo de configuração de single sign-on (SSO) baseado em função entre o Microsoft Entra ID (anteriormente Azure AD) e a Alibaba Cloud. Após concluir a configuração, os usuários do seu tenant do Microsoft Entra ID poderão fazer logon na Alibaba Cloud usando SAML SSO e assumir temporariamente uma função do RAM.
Antes de configurar o SSO baseado em função, verifique se os serviços de cloud desejados suportam funções do RAM. Para mais informações, consulte Cloud services that support Security Token Service (STS).
Casos de uso
Neste exemplo, uma empresa possui uma conta da Alibaba Cloud e um tenant do Microsoft Entra ID. O tenant inclui um administrador com permissões de administrador global e um funcionário com o nome principal do usuário (UPN) ssotest01@example.onmicrosoft.com. O objetivo é permitir que esse funcionário (ssotest01@example.onmicrosoft.com) use o SSO baseado em função para acessar a Alibaba Cloud após fazer logon no Microsoft Entra ID.
A configuração do SSO baseado em função não afeta o logon normal dos usuários do RAM. Isso significa que os usuários podem fazer logon na Alibaba Cloud assumindo uma função do RAM por meio de SSO iniciado pelo IdP ou continuar fazendo logon como usuários do RAM usando outros métodos, como senhas ou SSO baseado em usuário. Para usar o SSO baseado em função, inicie o logon a partir do seu provedor de identidade (IdP). Esse processo é chamado de SSO iniciado pelo IdP. O SSO baseado em função não suporta logons iniciados pelo provedor de serviços (SP), que neste caso é a Alibaba Cloud.
Com o SSO baseado em função, não é necessário criar previamente usuários na Alibaba Cloud correspondentes aos do seu IdP. Quando um usuário inicia um logon SSO a partir do IdP, a Alibaba Cloud permite que ele assuma temporariamente a função do RAM especificada na asserção SAML para acessar recursos.
Para comparar o SSO baseado em usuário e o SSO baseado em função, consulte SSO overview.
Pré-requisitos
Você deve ter um administrador do RAM com a permissão
AliyunRAMFullAccesspara operar no console do RAM. Para saber como criar um usuário do RAM e conceder permissões, consulte Create a RAM user e Manage RAM user permissions.É necessário ter um administrador do Microsoft Entra ID com a função de Administrador Global para operar no Microsoft Entra ID. Para obter detalhes sobre como criar um usuário e conceder permissões no Microsoft Entra ID, consulte a documentação do Microsoft Entra ID.
Processo de configuração
Esta configuração estabelece uma relação de confiança entre o IdP e o SP, além de mapear as funções de aplicativo no Microsoft Entra ID para as funções do RAM na Alibaba Cloud.
Step 1: Create an enterprise application in Microsoft Entra ID. Crie um aplicativo empresarial a partir da galeria de aplicativos do Microsoft Entra ID utilizando o modelo de aplicativo Alibaba Cloud Service (Role-based SSO).
Step 2: Configure SAML in Microsoft Entra ID. Configure o SSO baseado em função da Alibaba Cloud como um provedor de serviços SAML confiável.
Step 3: Create an identity provider in Alibaba Cloud. Configure o Microsoft Entra ID como um IdP SAML confiável no RAM da Alibaba Cloud.
Step 4: Create a RAM role in Alibaba Cloud. Crie uma função do RAM no RAM da Alibaba Cloud e defina o tipo de principal como IdP.
Step 5: Create an app role and assign users in Microsoft Entra ID. Crie e configure uma função de aplicativo para o aplicativo de SSO baseado em função da Alibaba Cloud no Microsoft Entra ID e atribua um usuário de teste ao aplicativo empresarial.
Verify the SSO logon. Verifique se o logon via SSO baseado em função funciona conforme o esperado.
Etapa 1: Criar um aplicativo empresarial no Microsoft Entra ID
-
Faça logon no portal do Azure como administrador global do Microsoft Entra ID.
NotaSe você utiliza o Azure AD china (operado pela 21Vianet), use
https://portal.azure.cnem vez dehttps://portal.azure.com. No canto superior esquerdo da página, clique em no ícone
.No painel de navegação à esquerda, escolha Microsoft Entra ID > Manage > Enterprise applications > All applications.
Clique em New application.
Pesquise e selecione Alibaba Cloud Service (Role-based SSO). Caso utilize o Azure AD china e este modelo não esteja disponível na galeria de aplicativos empresariais, crie manualmente um aplicativo empresarial fora da galeria e conclua a configuração SAML nas etapas subsequentes.
-
Insira um nome para o aplicativo e clique em Create.
Este exemplo utiliza o nome padrão do aplicativo
Alibaba Cloud Service (Role-based SSO). Você também pode especificar um nome personalizado.
Etapa 2: Configurar o SAML no Microsoft Entra ID
Na página Alibaba Cloud Service (Role-based SSO), no painel de navegação à esquerda, escolha Manage > Single sign-on.
Clique em SAML.
-
Configure as informações de SSO.
-
No canto superior esquerdo da página, clique em Upload metadata file, selecione o arquivo de metadados para o SSO baseado em função da Alibaba Cloud e clique em Add.
NotaPara obter o arquivo de metadados, abra
https://signin.alibabacloud.com/saml-role/sp-metadata.xmlem uma nova janela do navegador e salve o arquivo XML de metadados de federação no seu computador. -
Na página Basic SAML Configuration, configure as seguintes informações e clique em Save.
identifier (entity ID): Este valor é preenchido automaticamente a partir do atributo
entityIDno arquivo de metadados.reply URL (assertion consumer service URL): Este valor é preenchido automaticamente a partir do atributo
Locationno arquivo de metadados.-
relay state: Este parâmetro opcional especifica a página da Alibaba Cloud para a qual os usuários são redirecionados após um logon bem-sucedido via SSO baseado em função.
NotaPor motivos de segurança, insira apenas uma URL de domínio pertencente à Alibaba como valor de relay state, como .aliyun.com, .hichina.com, .yunos.com, .taobao.com, .tmall.com, .alibabacloud.com ou *.alipay.com. Caso contrário, a configuração será inválida. Se você não configurar este parâmetro, os usuários serão redirecionados por padrão para a página inicial do console da Alibaba Cloud.
-
Na seção Attributes & Claims, clique em no ícone
e verifique se as duas claims a seguir existem.Se essas claims estiverem ausentes, clique em Add new claim e adicione-as conforme descrito na tabela abaixo.
Name
Namespace
Source
Source attribute
Rolehttps://www.aliyun.com/SAML-Role/AttributesAttribute
user.assignedroles
RoleSessionNamehttps://www.aliyun.com/SAML-Role/AttributesAttribute
user.userprincipalname
Na seção SAML Certificates, localize Federation Metadata XML e clique em Download.
-
Etapa 3: Criar um provedor de identidade na Alibaba Cloud
Faça logon no console do RAM como administrador do RAM.
No painel de navegação à esquerda, escolha .
Na aba Role-based SSO, clique em na aba SAML e clique em Create IdP.
Na página Create IdP, insira
AADno campo IdP Name.Clique em Upload Metadata File e faça upload do arquivo XML de metadados de federação baixado na Etapa 2: Configurar o SAML no Microsoft Entra ID.
Clique em Create IdP.
Clique em no provedor de identidade
AADcriado. Na seção Basic Information, localize e copie o ARN do provedor de identidade.
Etapa 4: Criar uma função do RAM na Alibaba Cloud
No painel de navegação à esquerda do console do RAM, escolha .
Na página Roles, clique em Create Role.
No canto superior direito da página Create Role, clique em Switch to Policy Editor.
-
Especifique o provedor de identidade SAML no editor.
O editor oferece um modo visual e um modo de script. Você pode usar qualquer um deles. Este exemplo utiliza o editor visual. Em Principal, selecione IdP e clique em Edit. Em seguida, especifique AAD como o provedor de identidade e selecione SAML para IdP Type.
Na caixa de diálogo Create Role, insira um Role Name, como AADrole, e clique em OK para criar a função.
Clique em na função do RAM criada. Na seção Basic Information, localize e copie o ARN da função.
Conforme necessário, conceda permissões à função do RAM. Para mais informações, consulte Manage permissions for a RAM role.
Etapa 5: Criar funções de aplicativo e atribuir usuários
-
Crie uma função de aplicativo no Microsoft Entra ID.
Faça logon no portal do Azure como administrador.
No painel de navegação à esquerda, escolha Microsoft Entra ID > Manage > App registrations.
Clique em na aba All applications e clique em Alibaba Cloud Service (Role-based SSO).
No painel de navegação à esquerda, escolha Manage > App roles.
Clique em Create app role.
-
Na página Create app role, configure as seguintes informações da função e clique em Application.
Display Name: Neste exemplo, insira
Admin.Allowed member types: Neste exemplo, selecione Users/groups.
-
Value: Insira o ARN da função do RAM e o ARN do provedor de identidade, separados por vírgula (,). Por exemplo, insira
acs:ram::187125022722****:role/aadrole,acs:ram::187125022722****:saml-provider/AAD.NotaO valor deve estar no formato
ARN da função do RAM,ARN do provedor de identidade. Se a ordem estiver incorreta, o logon SSO falhará. Description: Insira uma descrição para a função.
Selecione Do you want to enable this app role?.
NotaCaso precise criar várias funções de aplicativo no Microsoft Entra ID, repita as etapas anteriores definindo nomes de exibição e valores de função de aplicativo diferentes.
-
Atribua um usuário ao aplicativo empresarial e especifique uma função de aplicativo.
No painel de navegação à esquerda, escolha Microsoft Entra ID > Manage > Enterprise applications > All applications.
Na lista Name, clique em Alibaba Cloud Service (Role-based SSO).
No painel de navegação à esquerda, escolha Manage > Users and groups.
No canto superior esquerdo, clique em Add user/group.
Na página Add Assignment, selecione o usuário desejado e clique em Select.
-
Certifique-se de que a função selecionada seja Admin e clique em Allowed Identities.
NotaEm ambientes de produção, a melhor prática é adicionar usuários a grupos no Microsoft Entra ID e, em seguida, atribuir esses grupos ao aplicativo empresarial.
Se você tiver várias funções, poderá associar diferentes grupos de usuários a diferentes funções, como associar um grupo ECS-admin a uma função ECS-admin e um grupo OSS-admin a uma função OSS-admin. Essa prática permite um controle de acesso mais granular e uma gestão de usuários mais eficiente.
Verificar o logon SSO
O SSO baseado em função suporta apenas SSO iniciado pelo IdP. Para validar a configuração, inicie o logon a partir do Microsoft Entra ID.
-
Obtenha a URL de acesso do usuário.
Faça logon no portal do Azure como administrador.
No painel de navegação à esquerda, escolha Microsoft Entra ID > Manage > Enterprise applications > All applications.
Na lista Name, clique em Alibaba Cloud Service (Role-based SSO).
No painel de navegação à esquerda, escolha Manage > Properties e obtenha a User access URL.
-
Como o usuário (ssotest01@example.onmicrosoft.com), abra a User access URL em um navegador e faça logon com sua conta. Após um logon bem-sucedido, o usuário é redirecionado por padrão para o console da Alibaba Cloud. A função do RAM definida (
aadrole) aparece antes do nome da conta.O logon via SSO ocorre automaticamente e você é redirecionado para a página especificada em relay state. Caso relay state não esteja especificado ou seu valor esteja fora do escopo permitido, o sistema redireciona você para a página inicial do console da Alibaba Cloud.
Avançado: Configurar SSO para várias contas da Alibaba Cloud
Suponha que você tenha duas contas da Alibaba Cloud (Account1 e Account2). O objetivo é configurar o SSO para que um funcionário (ssotest01@example.onmicrosoft.com) possa fazer logon no Microsoft Entra ID e usar o SSO baseado em função para acessar tanto a Account1 quanto a Account2.
-
Adicione o aplicativo
Alibaba Cloud Service (Role-based SSO)da galeria do Microsoft Entra ID.Para mais informações, consulte Step 1: Create an enterprise application in Microsoft Entra ID.
-
Configure o SSO do Microsoft Entra ID.
Para mais informações, consulte Step 2: Configure SAML in Microsoft Entra ID.
-
Crie provedores de identidade na Alibaba Cloud.
É necessário criar um IdP chamado
AADem cada uma das duas contas da Alibaba Cloud (Account1 e Account2).Para as operações específicas em cada conta da Alibaba Cloud, consulte Step 3: Create an identity provider in Alibaba Cloud.
-
Crie funções do RAM na Alibaba Cloud.
Crie funções do RAM em cada uma das duas contas da Alibaba Cloud. Neste exemplo, suponha que você crie duas funções do RAM na Account1 e uma função do RAM na Account2. Os detalhes são os seguintes:
Funções do RAM para a Account1:
adminaadereadaad.Função do RAM para a Account2:
financeaad.
Para as operações específicas em cada conta da Alibaba Cloud, consulte Step 4: Create a RAM role in Alibaba Cloud.
-
Associe as funções do RAM da Alibaba Cloud ao usuário do Microsoft Entra ID.
No Microsoft Entra ID, crie três funções de aplicativo e atribua-as ao usuário (ssotest01@example.onmicrosoft.com). Os valores para as três funções são os seguintes:
acs:ram::<Account1_ID>:role/adminaad,acs:ram::<Account1_ID>:saml-provider/AADacs:ram::<Account1_ID>:role/readaad,acs:ram::<Account1_ID>:saml-provider/AADacs:ram::<Account2_ID>:role/financeaad,acs:ram::<Account2_ID>:saml-provider/AAD
Para mais informações, consulte Step 5: Create an app role and assign users in Microsoft Entra ID.
-
Acesse a Alibaba Cloud usando o SSO baseado em função como usuário do Microsoft Entra ID.
O usuário (ssotest01@example.onmicrosoft.com) faz logon no portal Meus Aplicativos do Azure e clica em no aplicativo Alibaba Cloud Service (Role-based SSO). Na página da Alibaba Cloud, você será solicitado a selecionar uma conta da Alibaba Cloud (Account1 ou Account2) e uma função a ser assumida para acessar a Alibaba Cloud via SSO baseado em função.
Solução de problemas
Consulte Single sign-on (SSO) FAQ.