- vừa được xem lúc

Hướng dẫn cấu hình đăng nhập Cognito AWS thông qua OAuth2 Azure

0 0 29

Người đăng: Kha Leo

Theo Viblo Asia

Sơ lược về Cognito: Amazon Cognito là dịch vụ của Amazon Web Services cung cấp xác thực, ủy quyền và quản lý người dùng cho các ứng dụng web và di động của bạn. Người dùng có thể đăng nhập trực tiếp bằng tên người dùng và mật khẩu hoặc thông qua bên thứ ba như Facebook, Amazon, Google hoặc Apple.

Prerequisite:

  1. Cognito App trên AWS: https://aws.amazon.com/cognito/
  2. Account Azure: https://portal.azure.com/

I. Cấu hình trên Azure

  1. Chọn Single sign-on, sau đó chọn SAML image.png

  2. Ở step 1, chọn edit image.png

  3. Identifier (Entity ID), điền User Pool Id từ Cognito theo định dạng sau urn:amazon:cognito:sp:<yourUserPoolID>

image.png

  1. Reply URL điền theo định dạng: https://<yourDomainPrefix>.auth.<yourRegion>.amazoncognito.com/saml2/idpresponsehttps://<yourDomainPrefix>.auth.<yourRegion>.amazoncognito.com/oauth2/idpresponse

image.png

  1. Điền Logout URL (optional), đây là

image.png

  1. Lưu lại cấu hình và download meta file ở Step 3

image.png

  1. Ở bước tiếp theo, ta thêm user email vào azure, những email đã được thêm vào Azure app mới có thể login bằng azure. Vào "Users and groups", chọn Add user/group

image.png

  1. Chọn None Selected

image.png

  1. Điền user email và chọn select, sau đó nhấn Assign

image.png

II. Cấu hình trên Azure Cognito

  1. Vào Amazon Cogino, chọn User pools, chọn pool đã tạo
  2. Chọn Sign-in experience
  3. Ở block Federated identity provider sign-in, chọn Add identity provider
  4. Chọn option SAML, sau đó nhập provider name và upload meta document (upload file đã download trước đó từ Azure)
  5. Ở block Map attributes between your SAML provider and your user pool, nhập attributes, ở đây mình điền User pool attribute mặc định là email và SAML attribute là http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
  • Sau đó click Add identity provider để lưu

image.png

image.png

  1. Tiếp đến là chúng ta sẽ kích hoạt login bằng SAML đã config ở trên. Chọn tab App Integration, ở block App clients and analytics chọn app client đã tạo
  • Giao diện App client

image.png

  1. Chọn edit Hosted UI, chúng ta điền Allowed callback URLsAllowed sign-out URLs - optional

image.png

  1. Tiếp đến ở block Identity providers, thêm app Azure đã tạo, ở đây mình đã có app Google đã tạo trước đó:

image.png

  1. Chọn tiếp các config dưới đây và lưu lại cấu hình

image.png

III. Kiểm tra

  1. Ở Cognito ở tab Hosted UI chọn View Hosted UI

image.png

  1. Login bằng Microsoft

image.png

  1. Nếu Login thành công Cognito sẽ redirect về url mà bạn đã config ở Cognito với query string ?code=XXX, sau đó bạn có thể dùng code để lấy access_token, id_token, refresh_token... (tài liệu: tại đây)



Mình đã hướng dẫn các bạn setup login với Azure thông qua Cognito, hẹn gặp các bạn ở các series tiếp theo

Mục tìm kiếm đồng đội

Hiện tại thì bên công ty mình, là Hoàng Phúc International, với hơn 30 năm kinh nghiệm trong lĩnh vực thời trang. Và là trang thương mại điện tử về thời trang lớn nhất Việt Nam. Team công nghệ của HPI đang tìm kiếm đồng đội cho các vị trí như:


Với mục tiêu trong vòng 5 năm tới về mảng công nghệ là:
  • Sẽ có trang web nằm trong top 10 trang web nhanh nhất VN với 20 triệu lượt truy cập mỗi tháng.
  • 5 triệu loyal customers và có hơn 10 triệu transactions mỗi năm.

Team đang xây dựng một hệ thống rất lớn với rất nhiều vấn để cần giải quyết, và sẽ có rất nhiều bài toàn thú vị cho các bạn. Nếu các bạn có hứng thú trong việc xây dựng một hệ thống lớn, linh hoạt, dễ dàng mở rộng, và performance cao với kiến trúc microservices thì hãy tham gia với tụi mình.

Nếu các bạn quan tâm hãy gửi CV ở trong trang tuyển dụng của Hoàng Phúc International hoặc qua email [email protected] của mình nha .

Cảm ơn các bạn đã đọc.

Bình luận

Bài viết tương tự

- vừa được xem lúc

PDF Export, cẩn thận với những input có thể truyền vào

Giới thiệu. Dạo gần đây mình tình cờ gặp rất nhiều lỗi XSS, tuy nhiên trang đó lại có sử dụng dữ liệu người dùng input vào để export ra PDF.

0 0 49

- vừa được xem lúc

Giới thiệu về AWS Batch

Khi sử dụng hệ thống cloud service, điều chúng ta thường phải quan tâm đến không chỉ là hiệu suất hoạt động (performance) mà còn phải chú ý đến cả chi phí bỏ ra để duy trì hoạt động của hệ thống. Chắn hẳn là hệ thống lớn hay nhỏ nào cũng đã từng phải dùng đến những instance chuyên để chạy batch thực

0 0 128

- vừa được xem lúc

Tìm hiểu về AWS KMS

1. AWS KMS là gì. Ở KMS bạn có thể lựa chọn tạo symetric key (khóa đối xứng) hoặc asymetric key (khóa bất đối xứng) để làm CMK (Customer Master Key). Sau khi tạo key thì có thể thiết đặt key policy để control quyền access và sử dụng key.

0 0 53

- vừa được xem lúc

AWS VPC cho người mới bắt đầu

Tuần này, tôi trình bày lại những gì tôi đã học được về Virtual Private Cloud (VPC) của Amazon. Nếu bạn muốn xem những gì tôi đã học được về AWS, hãy xem Tổng quan về DynamoDB và Tổng quan về S3. VPC là gì. Những điều cần lưu ý:.

0 0 69

- vừa được xem lúc

AWS Essentials (Phần 6): Guildline SNS Basic trên AWS

Tiếp tục với chuỗi bài viết về Basic AWS Setting, chúng ta tiếp tục tìm hiểu tiếp tới SNS (Simple Notification Service). Đây là một service của AWS cho phép người dùng setting thực hiện gửi email, text message hay push notification tự động tới mobile device dựa trên event người dùng setting phía AWS

0 0 125

- vừa được xem lúc

Sử dụng Amazon CloudFront Content Delivery Network với Private S3 Bucket — Signing URLs

Trong nhiều trường hợp, thì việc sử dụng CDN là bắt buộc. Mình đã trải nghiệm với một số CDN nhưng cuối cùng mình lựa chọn sử dụng AWS CloudFront.

0 0 105