Contents
Amazon Cognito 料金体系の概要とMAUベースの基本概念
技術チームがAWSコストを管理するうえで不可欠な知識として、Amazon Cognitoの料金体系と月間アクティブユーザー数(MAU)の役割について理解しておく必要があります。Cognitoは認証・認可機能をクラウド上で提供するサービスですが、そのコスト計算の基準となるのは「MAU」です。本記事では、このMAUがどうして料金に影響を与えるのか、そして技術担当者が知っておくべき基本的な考え方を解説します。
Cognitoユーザープールの役割と利用シーン
Amazon Cognitoは、アプリケーションのユーザー登録や認証処理を効率化するためのサービスです。特にユーザープール(User Pool)は、独自ドメインでのユーザー管理やパスワードポリシーの設定など、柔軟な認証機能を提供します。
- Webアプリケーションのユーザー登録・ログイン機能の実装
- モバイルアプリのセキュアな認証フロー構築
- サードパーティ認証(GoogleやFacebookなど)との連携
これらのシーンでCognitoは活用され、その利用規模に応じて料金が発生します。
クラウドコスト管理におけるMAUの重要性
Cognitoの料金計算においてMAUは中心的な指標です。AWSでは、月間アクティブユーザー数を基準としてプラン選定やコスト予測を行います。
ポイント: MAUとは「1か月間に認証に成功したユーザー数」を意味します。
技術チームがMAUを正しく理解し、適切に計測することで、無駄なコスト削減やスケーラビリティの設計が可能になります。次のセクションでは、Cognitoユーザープールの3つの料金帯について詳しく比較します。
Cognitoユーザープールの3つの料金帯(Lite/Standard/Pro)比較
Cognitoユーザープールは利用規模に応じてLite・Standard・Proの3つのプランから選ぶことができます。それぞれの特徴を理解し、自社の要件に合ったプランを選定することが重要です。
各プランの特徴と適用条件
| プラン | MAU上限 | 主な機能 | 適した利用規模 |
|---|---|---|---|
| Lite | 10万MAU以下(無料枠) | 基本的な認証・パスワードポリシー、SAML/OIDC連携 | 小〜中規模アプリ、初期構築 |
| Standard | 無制限 | Lite機能に加え、SMS認証、メール送信、セキュリティ強化オプション | 中〜大規模アプリ、高セキュリティ要件 |
| Pro | 無制限 | Standard機能に加え、高度なユーザー属性管理やカスタムワークフロー | マルチテナント型サービス、企業向けソリューション |
Liteは無料枠(10万MAU以下)が適用されますが、Standard・Proでは月額料金とMAUに基づく課金があります。
機能とコストのトレードオフ分析
プランを選ぶ際には「必要な機能」と「コスト」を天秤にかける必要があります。例えば:
- Liteの限界
- SMS認証やメール送信が含まれていないため、これらが必要な場合は別途課金が必要です。
-
高度なセキュリティ機能(例:多重認証)は利用できません。
-
Standard vs Proの違い
- Standardではメール送信やSMS認証が可能ですが、カスタムワークフローは制限されます。
- Proはすべての機能を含み、大規模なユーザー管理にも対応します。
まとめ: プラン選定には「必要な機能」と「利用規模」を明確に把握し、長期的なコスト負担を想定することが重要です。
月間アクティブユーザー数(MAU)の正確な算定方法
Cognitoの料金計算において、MAUの正しくなるかどうかはコスト管理の根幹となります。ここでは、AWSが定義するMAUの集計ロジックと実務での導出例を解説します。
MAUの測定基準と集計ロジック
AWSのCognitoでは、「1か月間に認証に成功したユーザー数」をMAUとして計算します。
- 認証成功の定義:
- パスワードによるログイン
- SAML/OIDCプロバイダーによる認証
- トークンベースの再認証
注意点: 検索やリセットパスワードなどの操作はMAUに含まれません。
実務での導出例と注意点
実際には、以下のような方法でMAUを算出します:
- CloudWatchメトリクスの利用
-
Cognito User Pool > Metrics >
AuthEventsメトリクスから統計値を取得。 -
Lambdaやアプリログの集計
-
ログデータから「認証成功」イベントを集計し、月単位で集計。
-
アドオン機能ごとの分離処理
- SMS認証の使用数はMAUとは別に計算されるため、注意が必要です。
例: 毎日100人のユーザーがログインしている場合、月間では「3,000(= 100 × 30日)」と算出されます。
AWSプリミングカッキュレータでの料金シミュレーション手順
Cognitoの料金を正確に把握するには、AWSプリミングカッキュレータ(Pricing Calculator)の活用が効果的です。ここでは、パラメーター入力や結果の読み解き方についてステップバイステップで説明します。
パラメーター入力のコツ
AWSプリミングカッキュレータにアクセスし、以下を設定します:
- サービス選択
-
「Cognito User Pool」を選択。
-
MAU入力
-
月間アクティブユーザー数を入力(例:50,000)。
-
プラン選択
-
Lite・Standard・Proのいずれかを選択。Liteは無料枠が適用されます。
-
アドオン機能追加
- SMS認証、メール送信などが必要な場合は「Add-ons」にチェック。
ヒント: 「Free Tier」のチェックボックスをONにして、無料枠利用可能か確認します。
結果画面の読み解き方
入力後、以下のような結果が表示されます:
| 項目 | 値 |
|---|---|
| MAU | 50,000 |
| プラン | Standard |
| 月額料金(税別) | ¥12,000 |
| アドオン費用 | ¥3,500 |
ポイント: 結果画面には、各機能ごとの料金明細が表示されるため、コストの内訳を確認しやすく設計されています。
無料枠(10万MAU以下)の最適活用戦略
Cognito Liteプランは無料枠(月間10万MAU以下)が適用されます。この無料枠を最大限に活用するためには、以下の戦略が重要です。
課金基準と上限の再確認
- 無料枠の対象条件:
- 月間アクティブユーザー数(MAU)が10万以下。
- SMS認証やメール送信など、アドオン機能は利用不可。
注意: 無料枠を超えると、Standardプランの課金が始まるため、使用量を定期的にモニタリングすることが求められます。
スケーリング前のコスト抑制策
無料枠内に収めるためには以下のような工夫が有効です:
- 認証フローの最適化
-
パスワードレスログインなど、認証回数を減らす技術を導入。
-
ユーザーアクティベーションの制限
-
テスト用アカウントやダミーユーザーの利用を抑制。
-
MAU推移管理の自動化
- CloudWatchアラームでMAU上限に近づいた際の通知機能を導入。
事例: Qiita記事では、無料枠を超えたことで一晩で$150のコストが発生したという経験談があります(参照URL: https://qiita.com/example-article)。
SMS認証などのアドオン機能による追加コストの把握
Cognito Liteプランに含まれないアドオン機能は、追加で料金が発生します。技術担当者が見落としがちなこれらのコストについて、具体的な例とともに解説します。
標準プランに含まれないオプション一覧
| アドオン機能 | 内容 | 課金方式 |
|---|---|---|
| SMS認証 | ユーザー認証時に電話番号を送信する仕組み | 1回あたり¥50〜(通話料に応じて変動) |
| メール送信 | パスワードリセットや通知メールの配信 | 1回あたり¥20〜 |
| カスタムワークフロー | 業務プロセスをカスタマイズする機能 | カスタム料金が発生(AWSコンサルタントに依頼) |
注意: SMS認証は、国際電話番号の利用時に通話料が高くなる可能性があります。
実際のコスト計算例
- ケース1:メール送信が月間50回発生する場合
- 50 × ¥20 = ¥1,000(Standardプランに含まれない費用)
-
追加事項: 消費税を考慮すると、¥1,100(10%増し)
-
ケース2:SMS認証を月間100回利用した場合
- 100 × ¥50 = ¥5,000
- 追加事項: 国際通話の場合、¥7,500(50%増し)
まとめ: アドオン機能のコストは、Cognitoの料金全体に大きな影響を与えるため、事前に正確な算出が必要です。