type
status
date
slug
summary
tags
category
icon
password
书籍
 

理論

AWSでのAPI認証に関する基本知識
  1. AWS API Gateway:
      • API Gatewayは、AWS Lambda関数や他のAWSリソースと連携して、Web APIを提供するためのマネージドサービスです。APIリクエストを受け取り、それを適切なバックエンドサービスに転送します。
  1. 認証方法:
      • Lambdaオーソライザー(以前はカスタムオーソライザー)は、API Gatewayがリクエストの認証を行うために使うLambda関数です。OAuthトークンやJWTトークンの検証に使用でき、APIリクエストのヘッダーに含まれる認証情報をチェックします。
      • IAMオーソライザー: AWS IAMを使用して、APIへのアクセス権限を設定します。IAMユーザーまたはロールに基づいてアクセスを制御しますが、OAuthトークンを扱う場合は適切ではありません。
  1. OAuth認証:
      • OAuthトークンは、ユーザーがアプリケーションにアクセスするための許可を証明するものです。サードパーティのアイデンティティプロバイダー(例えば、GoogleやAuth0)から発行され、APIの認証に使用されます。
  1. API Gatewayとサードパーティのアイデンティティプロバイダーの統合:
      • API GatewayでOAuthトークンを使って認証を実装する場合、Lambdaオーソライザーを用いてトークンを検証することが一般的です。これにより、API Gatewayが受け取るリクエストの認証をカスタマイズできます。
  1. SAMLとSSO:
      • SAML 2.0は、企業のSSO(シングルサインオン)に使われる標準プロトコルで、主にオンプレミスや企業ネットワーク内の認証で使用されます。OAuthトークンに対しては、SAMLは適していません。

要点:

  • OAuthトークンを使用する場合、Lambdaオーソライザーが最も適切な選択肢であり、API Gatewayに対する認証を効果的に行うことができます。
  • IAMオーソライザーSAML 2.0は、OAuthトークンの認証には適していないため、特定の用途に限られます。

実践

一問道場

問題 #517
ある企業が、AWSを使用して本番のWebアプリケーションを開発および管理しています。アプリケーションには、Amazon API Gateway HTTP APIが含まれており、これがAWS Lambda関数を呼び出します。Lambda関数はデータを処理し、その後データベースに保存します。企業は、Webアプリケーションのユーザー認証を統合された方法で実装したいと考えています。企業はすでに、他のアプリケーションのためにOAuthトークンを発行するサードパーティのアイデンティティプロバイダーを使用しています。
どのソリューションがこの要件を満たしますか?
A. 企業のサードパーティのアイデンティティプロバイダーをAPI Gatewayと統合します。API Gateway Lambdaオーソライザーを設定して、アイデンティティプロバイダーからのトークンを検証します。LambdaオーソライザーをすべてのAPIルートで要求します。Webアプリケーションを更新して、アイデンティティプロバイダーからトークンを取得し、API Gateway HTTP APIを呼び出す際にAuthorizationヘッダーにトークンを含めます。
B. 企業のサードパーティのアイデンティティプロバイダーをAWS Directory Serviceと統合します。Directory ServiceをAPI Gatewayオーソライザーとして設定し、アイデンティティプロバイダーからのトークンを検証します。Directory ServiceオーソライザーをすべてのAPIルートで要求します。AWS IAM Identity CenterをSAML 2.0アイデンティティプロバイダーとして設定します。WebアプリケーションをカスタムSAML 2.0アプリケーションとして設定します。
C. 企業のサードパーティのアイデンティティプロバイダーをAWS IAM Identity Centerと統合します。API Gatewayを設定して、IAM Identity Centerを使用したゼロ設定の認証および認可を実行します。Webアプリケーションを更新して、IAM Identity CenterからAWS Security Token Service(AWS STS)のトークンを取得し、API Gateway HTTP APIを呼び出す際にAuthorizationヘッダーにトークンを含めます。
D. 企業のサードパーティのアイデンティティプロバイダーをAWS IAM Identity Centerと統合します。API Gateway HTTP APIを呼び出す権限を持つIAMユーザーを設定します。Webアプリケーションを更新して、IAMユーザーからリクエストパラメータを抽出し、API Gateway HTTP APIを呼び出す際にAuthorizationヘッダーにパラメータを含めます。

解説

この問題では、企業が既存のサードパーティのアイデンティティプロバイダー(OAuthトークンを発行)を使用して、AWS上でWebアプリケーションの認証を実装する方法を求めています。最適なソリューションを選択するために、各選択肢を評価します。

選択肢の評価:

A: API GatewayでLambdaオーソライザーを使用

  • 説明: 企業のサードパーティアイデンティティプロバイダーをAPI Gatewayと統合し、Lambdaオーソライザーを使ってOAuthトークンを検証します。これにより、API Gatewayがリクエストごとに認証を行い、Lambda関数に渡すトークンの有効性を確認します。
  • 適切な選択肢: この方法は、OAuthトークンを使った認証をAPI Gatewayで簡単に統合できるため、最も適しており、シンプルで効果的です。Lambdaオーソライザーを使用してAPIのセキュリティを強化し、OAuthトークンをAuthorizationヘッダーで検証するため、企業の要件を満たします。

B: AWS Directory Serviceを使用

  • 説明: AWS Directory ServiceをAPI Gatewayのオーソライザーとして使用し、SAML 2.0アイデンティティプロバイダーとして設定されたIAM Identity Centerと統合します。
  • 問題点: AWS Directory ServiceとSAML 2.0を使用する方法は、OAuthトークンを使用する要件に対して過剰な構成が必要です。SAML 2.0は一般的にオンプレミスのディレクトリサービスと統合するため、OAuthベースの認証には適していません。

C: IAM Identity Centerを使ったゼロ設定認証

  • 説明: IAM Identity Centerを使用して、API Gatewayにゼロ設定の認証を提供し、IAM Identity CenterからSTFトークンを取得してAPI Gatewayで認証します。
  • 問題点: この方法は、企業がすでにOAuthトークンを使っているという要件には適していません。AWS IAM Identity Centerは主にSSO(シングルサインオン)に関連した認証システムであり、OAuthトークンの処理には最適ではありません。

D: IAMユーザーによる認証

  • 説明: IAM Identity Centerと統合した後、IAMユーザーをAPI Gatewayに呼び出すために設定します。その後、WebアプリケーションでIAMユーザーのリクエストパラメータをAuthorizationヘッダーに含めます。
  • 問題点: IAMユーザーによる認証は、OAuthトークンの使用という要件には適していません。また、このアプローチではOAuthトークンによる認証の一貫性やセキュリティが確保されません。

結論:

最適なソリューションは A です。
Lambdaオーソライザーを使ってAPI GatewayでOAuthトークンを検証し、WebアプリケーションでトークンをAuthorizationヘッダーに含める方法が、最も簡潔で効果的に要件を満たします。この方法は、サードパーティのアイデンティティプロバイダーとOAuthトークンを統合し、APIの認証を実現する最適なアプローチです。
相关文章
クラウド技術の共有 | AWS Site-to-Site
Lazy loaded image
EKSでのWordPressデプロイ:KCNA-JP試験対策 (Kubernetes実践編)
Lazy loaded image
初心者向け!コンテナ化WordPressサイト構築ガイド(超詳細版)
Lazy loaded image
EFSを活用!AWS EC2でDockerを使ったWordPressサイト構築
Lazy loaded image
529-AWS SAP AWS 「理論・実践・一問道場」VPCエンドポイント
Lazy loaded image
528-AWS SAP AWS 「理論・実践・一問道場」Migration Evaluator
Lazy loaded image
519-AWS SAP AWS 「理論・実践・一問道場」EBSボリュームは暗号化516-AWS SAP AWS 「理論・実践・一問道場」CloudTrail Lake
Loading...
みなみ
みなみ
一个普通的干饭人🍚
最新发布
第1回:イントロダクション
2025-4-21
TOKYO自習島
2025-4-21
第1回:イントロダクション
2025-4-18
第1回:オリエンテーション/意思決定と会計情報
2025-4-18
建物業法の基本と免許-59問
2025-4-10
宅建士过去问速刷:小南小白陪你拿证-001
2025-4-7
公告

🎉 欢迎访问我的博客 🎉

🙏 感谢您的支持 🙏

📅 本站自 2024年9月1日 建立,致力于分享我在 IT・MBA・不动产中介 等领域的学习与实践经验,并推动 线上线下学习会 的自主开展。

📚 主要内容

💻 IT・系统与开发

  • 系统管理:Red Hat 等
  • 容器与编排:Kubernetes、OpenShift
  • 云计算:AWS、IBM Cloud
  • AI 入门:人工智能基础与实践
  • 技术笔记与考证经验

🏠 不动产 × 宅建士

  • 宅建士考试笔记

🎓 MBA 学习笔记

  • 管理学、经济学、财务分析等

🔍 快速查找内容(标签分类)

由于网站目前没有专门的设计,可能会导致查找信息不便。为了更快找到你感兴趣的内容,推荐使用以下标签功能 进行搜索!
📌 定期更新,欢迎常来看看!
📬 有任何建议或想法,也欢迎留言交流!