AWS

Những Câu Hỏi Liên Quan Đến Cognito Trong Đề Thi AWS DVA-C02

Khi ôn thi chứng chỉ AWS Developer Associate (DVA-C02), Amazon Cognito là một trong những dịch vụ bạn cần nắm vững, đặc biệt nếu bạn làm việc với các ứng dụng yêu cầu xác thực và quản lý người dùng. Cognito thường xuất hiện trong đề thi dưới dạng các câu hỏi về cấu hình, tích hợp, và xử lý tình huống thực tế. Trong bài blog này, chúng ta sẽ tìm hiểu Cognito là gì, các khái niệm cốt lõi, và phân tích các dạng câu hỏi thường gặp trong kỳ thi DVA-C02 để bạn chuẩn bị tốt hơn.

Amazon Cognito Là Gì?

Amazon Cognito là dịch vụ quản lý danh tính và xác thực người dùng của AWS, giúp nhà phát triển thêm tính năng đăng nhập, đăng ký, và kiểm soát truy cập cho ứng dụng web hoặc di động. Cognito có hai thành phần chính:

  • User Pools: Quản lý người dùng, hỗ trợ đăng kí, đăng nhập, và xác minh danh tính.
  • Identity Pools: Cung cấp thông tin xác thực tạm thời (temporary credentials) để truy cập các dịch vụ AWS khác thông qua vai trò IAM.

Cognito được thiết kế để đơn giản hóa việc xử lý danh tính, đảm bảo bảo mật, và tích hợp dễ dàng với các dịch vụ như API Gateway, Lambda, hoặc S3.

Các Khái Niệm Cốt Lõi Cần Nắm

Trước khi đi vào các câu hỏi thi, bạn cần hiểu rõ các khái niệm sau:

  • JWT Tokens: User Pools trả về ID Token, Access Token, và Refresh Token sau khi xác thực.
  • IAM Roles: Identity Pools gắn với các vai trò IAM để cấp quyền truy cập.
  • Lambda Triggers: Tùy chỉnh luồng xác thực (ví dụ: Pre Sign-up, Post Authentication).
  • MFA: Xác thực đa yếu tố (Multi-Factor Authentication) qua SMS hoặc OTP.
  • Social Sign-In: Đăng nhập qua Google, Facebook, Apple, v.v.

Các Dạng Câu Hỏi Thường Gặp Trong Đề Thi AWS DVA-C02

Dưới đây là các dạng câu hỏi phổ biến liên quan đến Amazon Cognito trong kỳ thi DVA-C02, kèm giải thích và ví dụ thực tế để bạn dễ hình dung.

1. Câu Hỏi Về Khái Niệm và Thành Phần

Ví dụ câu hỏi:
“Amazon Cognito cung cấp hai thành phần chính nào để quản lý danh tính người dùng?”

  • A. User Groups và Identity Groups
  • B. User Pools và Identity Pools
  • C. Authentication Pools và Authorization Pools
  • D. Cognito Streams và Cognito Events

Đáp án: B. User Pools và Identity Pools
Giải thích:

  • User Pools quản lý xác thực (authentication) và thông tin người dùng.
  • Identity Pools xử lý ủy quyền (authorization) bằng cách cung cấp thông tin xác thực tạm thời.
  • Các đáp án khác là sai vì không phải thuật ngữ của Cognito.

Mẹo: Hãy nhớ phân biệt rõ “authentication” (xác thực danh tính) và “authorization” (cấp quyền truy cập).


2. Câu Hỏi Về Tích Hợp Với Dịch Vụ AWS

Ví dụ câu hỏi:
“Bạn đang phát triển một ứng dụng cần xác thực người dùng và cấp quyền truy cập vào API Gateway. Dịch vụ nào nên được sử dụng để xác thực người dùng?”

  • A. AWS IAM
  • B. Amazon Cognito User Pools
  • C. AWS Lambda
  • D. Amazon S3

Đáp án: B. Amazon Cognito User Pools
Giải thích:

  • User Pools cung cấp chức năng xác thực và trả về token JWT, sau đó có thể được dùng để gọi API Gateway.
  • IAM không phù hợp để xác thực người dùng cuối, mà dùng để quản lý quyền truy cập nội bộ AWS.
  • Lambda và S3 không phải dịch vụ xác thực.

Mẹo: Đề thi thường hỏi về tích hợp Cognito với API Gateway hoặc Lambda. Hãy nhớ rằng User Pools xác thực, còn Identity Pools cấp quyền.


3. Câu Hỏi Về Cấu Hình Lambda Triggers

Ví dụ câu hỏi:
“Bạn cần gửi email chào mừng cho người dùng ngay sau khi họ đăng ký thành công. Tính năng nào của Cognito giúp thực hiện điều này?”

  • A. Pre Authentication Trigger
  • B. Post Confirmation Trigger
  • C. Pre Token Generation Trigger
  • D. Post Authentication Trigger

Đáp án: B. Post Confirmation Trigger
Giải thích:

  • Post Confirmation Trigger kích hoạt sau khi người dùng xác nhận đăng ký (ví dụ: qua email hoặc SMS), lý tưởng để gửi email chào mừng.
  • Post Authentication Trigger chạy sau khi đăng nhập, không phù hợp ở đây.
  • Các trigger khác có mục đích khác (Pre Authentication kiểm tra trước đăng nhập, Pre Token điều chỉnh token).

Mẹo: Ôn kỹ các Lambda Triggers (Pre Sign-up, Post Confirmation, v.v.) và mục đích của chúng.


4. Câu Hỏi Về Bảo Mật (MFA)

Ví dụ câu hỏi:
“Một ứng dụng yêu cầu bảo mật cao cần thêm bước xác minh thứ hai khi người dùng đăng nhập. Giải pháp nào của Cognito nên được sử dụng?”

  • A. Kích hoạt MFA trong User Pools
  • B. Sử dụng Identity Pools với IAM Roles
  • C. Thêm Lambda Trigger Pre Sign-up
  • D. Tích hợp với AWS Shield

Đáp án: A. Kích hoạt MFA trong User Pools
Giải thích:

  • MFA (Multi-Factor Authentication) trong User Pools hỗ trợ xác thực đa yếu tố qua SMS hoặc OTP, tăng cường bảo mật.
  • Identity Pools không xử lý MFA, mà chỉ cấp thông tin xác thực.
  • Lambda Trigger và AWS Shield không liên quan trực tiếp đến MFA.

Mẹo: Đề thi hay hỏi về cách tăng bảo mật (MFA, giám sát đăng nhập bất thường).


5. Câu Hỏi Tình Huống Thực Tế

Ví dụ câu hỏi:
“Một ứng dụng cho phép khách (unauthenticated users) truy cập nội dung công khai, nhưng chỉ người dùng đăng nhập mới có thể tải tệp lên. Cách cấu hình Cognito như thế nào?”

  • A. Dùng User Pools với MFA
  • B. Cấu hình Identity Pools với Authenticated và Unauthenticated Roles
  • C. Tạo hai User Pools riêng biệt
  • D. Sử dụng IAM Policies mà không cần Cognito

Đáp án: B. Cấu hình Identity Pools với Authenticated và Unauthenticated Roles
Giải thích:

  • Identity Pools hỗ trợ cả người dùng đã xác thực (Authenticated Role) và chưa xác thực (Unauthenticated Role).
  • Bạn có thể gán quyền tải tệp cho Authenticated Role và quyền đọc cho Unauthenticated Role.
  • User Pools không xử lý quyền truy cập tài nguyên trực tiếp.

Mẹo: Hiểu cách IAM Roles gắn với Identity Pools để giải quyết các kịch bản phân quyền.


6. Câu Hỏi Về Đăng Nhập Xã Hội

Ví dụ câu hỏi:
“Ứng dụng của bạn cần hỗ trợ đăng nhập bằng Google và Facebook. Tính năng nào của Cognito đáp ứng yêu cầu này?”

  • A. Federated Identities trong Identity Pools
  • B. Social Sign-In trong User Pools
  • C. Lambda Pre Authentication Trigger
  • D. AWS AppSync Integration

Đáp án: B. Social Sign-In trong User Pools
Giải thích:

  • User Pools hỗ trợ đăng nhập qua mạng xã hội (Google, Facebook, Apple) thông qua tính năng Social Sign-In.
  • Federated Identities trong Identity Pools liên quan đến việc cấp thông tin xác thực, không phải xác thực ban đầu.

Mẹo: Đề thi có thể hỏi về tích hợp với nhà cung cấp danh tính bên thứ ba.


Mẹo Ôn Thi Liên Quan Đến Cognito

  • Phân biệt rõ vai trò: User Pools (xác thực) vs Identity Pools (ủy quyền).
  • Nắm các Lambda Triggers: Pre Sign-up, Post Confirmation, Post Authentication, v.v.
  • Hiểu IAM Roles: Cách gán quyền cho người dùng đã xác thực và chưa xác thực.
  • Thực hành: Sử dụng AWS Free Tier để tạo User Pools, Identity Pools, và thử tích hợp với API Gateway hoặc Lambda.
  • Đọc kịch bản: Đề thi thường đưa ra tình huống thực tế (ứng dụng di động, bảo mật, v.v.), hãy phân tích kỹ yêu cầu.

Kết Luận

Amazon Cognito là một phần quan trọng trong kỳ thi AWS DVA-C02, với các câu hỏi xoay quanh khái niệm, cấu hình, và tích hợp. Bằng cách nắm vững User Pools, Identity Pools, Lambda Triggers, và các tính năng bảo mật như MFA, bạn sẽ tự tin xử lý các câu hỏi liên quan. Hãy thực hành với các kịch bản thực tế và ôn kỹ các dạng câu hỏi trên để đạt kết quả tốt nhất.

12 Views

Leave a Reply

Your email address will not be published. Required fields are marked *