Sumário



Introdução

Nesse tutorial irei demostrar para vocês como fazer a integração do Azure AD com a AWS, esse artigo tem a visão de utilizar a identidade única para fazer o login com seu usuário do AD ou Azure AD diretamente no console da AWS.

aws-signon2

O SSO entre o Azure AD e Amazom Web Service, funciona de uma maneira diferente, nessa integração devemos criar o usuário dentro da console da AWS para que seja feita o merge entre as contas, esse é o único ponto onde devemos nos atentar, lembrando que só é uma criação de usuário que não precisa de senha.
Vamos adicionar o app da AWS na galeria de aplicativos SaaS do Microsoft Azure.

Criação da Aplicação Portal Azure

No portal do Microsoft Azure, vamos em “Azure Active Directory”, em seguida “Enterprise Applications” e clique em “All Applications”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_01
Em seguida clique em “New Application”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_02
Agora em pesquisa procure por “Amazon Web Services (AWS)” e selecione a aplicação.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_03
Em seguida você pode mudar o nome da aplicação para ficar mais fácil de saber qual cliente está integrado. Após mudar o nome clique em “Add” e aguarde o provisionamento da aplicação.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_04
Pronto a aplicação está provisionada, agora vamos até a opção de “Single Sing-On”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_05
Em Single “Sing-on” vamos escolher a opção “SAML-based Sing-on”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_06

Essa etapa é)_05" src="http://micheljatoba.com.br/wp-content/uploads/2018/01/Integra%C3%A7%C3%A3o_do_Azure_Active_Directory_com_o_AWS_Amazon-Web-Services_05_thumb.jpg" style="border-width:0px;border-style:solid;margin-right:auto;margin-left:auto;display:block;float:none;" />Em Single “Sing-on” vamos escolher a opção “SAML-based Sing-on”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_06
Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_07

Em seguidas vamos adicionar dois atributos em “User Attributes”, para isso selecione “View and edit all other user attributes”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_08

Agora clique em “Add Attribute”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_09

Agora adicione as seguintes regras:

Nome do Atributo Valor do Atributo Namespace
RoleSessionName user.userprincipalname https://aws.amazon.com/SAML/Attributes
Role user.assingroles https://aws.amazon.com/SAML/Attributes


*Lembrando que os atributos respeitam o “case sensitive”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_10Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_11
Agora vamos fazer o download do certificado “Metadados XML” e salvar em local seguro em seu computador. Um detalhe muito importante, altere o “Signing Algorith” para “SHA 1”, por padrão ela vem em “SHA 256” e não funcionara a integração. Em seguida iremos setar o certificado como ativo, depois vamos “Salvar”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_24


Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_12

Criação Console AWS

Pronto a primeira parte está configurada, agora vamos ao console da AWS. Vamos procurar a opção IAM(Identity and Access Management).

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_13

Agora vamos criar um provedor de identidade, vá até id;margin-right:auto;margin-left:auto;d“Identity Provider” e clique em “Create Provider”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_14

Em “Create Provider” selecione o tipo de provedor “SAML”, de um nome para esse provedor e seguida faça o upload do “Metadados XML”, em seguida clique em “Next”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_15

Em seguida clique em “Create”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_16
Pronto o provedor de identidade foi criado com sucesso.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_17
Agora vamos criar uma regra, vá em “Roles” e clique em “Create Roles

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_18
Agora vamos escolher a identidade confiável “SAML”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_19
Em seguida selecione o provedor de identidade que foi criado e selecione a permissão “Allow programmatic and AWS Management Console access”, em seguida clique em “Next Permissions”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_20
Agora selecione a politica, nesse caso estou dando permissão “Full”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_21
Agora de um nome para essa regra de acesso, em seguida clique em “Create Role”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_22
Pronto a regra foi criada com sucesso.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_23

Agora vamos criar um usuário para fazer a conexão entre o Azure ad e a AWS. Vá em “User” e “Add User”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_25

Agora vamos dar um nome para o usuário, em seguida selecione o tipo de acesso “Programmatic Access” e clique e “Next Permissions”.
Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_26

Agora vamos associar a politica, selecione “Attach existing policies directly”, em seguida clique em “Next Review” em seguida “Create User”.


Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_26

Agora vamos associar a politica, selecione “Attach existing policies directly”, em seguida clique em “Next Review” em seguida “Create User”.


Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_28

Agora você pode fazer o download do arquivo”.CSV” ou pode ver o “Secret Access Key” do seu usuário, porque precisamos dessa informação. Iremos voltar ao Azure AD para adicionar essas informações no provisionamento das Roles.


Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_29

Provisionando a Aplicação 

Vá ao Azure AD e selecione a aplicação e selecione “Provisioning”, por padrão ela vem como manual, vamos alterar para "Automático”, em seguida vamos adicionar as seguintes informações nos campos “clientsecret” e “Secret Token”. Depois das informações no campo clique em “Test Connection” depois clique em “Save”.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_30

Pronto a comunicação entre AWS e Azure AD está funcionando.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_31

Por ultimo em “Settings” vá em “Provisioning Status” deixe como “On” e clique em “Save”. Ele demora um pouco para provisionar.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_32

Agora vamos criar um usuário sem senha no console da AWS.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_33

Após criar o usuário voltamos na aplicação no portal do Azure, e iremos adicionar os usuários que terão acesso a integração. Escolha o usuário e atribua a regra que foi criada dentro da AWS.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_34

Funcionamento do Acesso

Pronto o processo de integração está pronto, vamos acessar o “MyApps” da Microsoft, na URL: http://myapps.microsoft.com/. Ao acessar o aplicativo está disponível basta da um clique, que ele vai fazer o SSO do seu usuário dentro da console da AWS.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_35

Fazon-Web-Services_35_thumb.jpg" style="border-width:0px;border-style:solid;margin-right:auto;margin-left:auto;display:block;float:none;" />
Pronto estamos acessando o console da AWS, via federação entre Azure AD e Amazon Web Services. Como podemos reparar ele faz a leitura da role e do usuário.

Integração_do_Azure_Active_Directory_com_o_AWS_(Amazon Web Services)_36

Obrigado e até o próximo post.