【AWS Chalice】API GatewayにCognito認証を付ける方法


AWS ChaliceでAPI GatewayにCognito認証を付けたいんだけど、やり方が分からないんだよね…
こんな疑問にお答えします。
- 本記事の執筆者
本記事を書いている僕はエンジニア歴7年です。
AWSは業務歴2年半なので、かなり有益な情報を発信できるかと思います。
結論、ChaliceでAPI GatewayにCognito認証を付けるのは超簡単です。
具体的なソースコードを載せているので安心してくださいね。


本記事を読んでいただければ、ChaliceでAPI GatewayにCognito認証を付ける方法が理解できるので、早速見ていきましょう。



すぐ読み終わるので、是非最後まで読んでみてください!
ChaliceでAPI GatewayにCognito認証を付ける方法
早速ですが、ChaliceでAPI GatewayにCognito認証を付けてみます。


認可は「なし」に設定されています。


Cognitoを開き、ユーザープールの管理をクリックします。


ユーザープールを作成するをクリックします。



これ以降はステップ通りにポチポチするだけなので割愛します。


プールARNをコピーします。
from chalice import Chalice, CognitoUserPoolAuthorizer
app = Chalice(app_name='hello-world')
authorizer = CognitoUserPoolAuthorizer(
'MyPool', provider_arns=['コピーしたプールARN'])
@app.route('/', methods=['GET'], authorizer=authorizer)
def index():
return {'hello': 'world'}
authorizerを設定することでCognito認証が付与されます。
オーソライザーについて
「MyPool」はオーソライザー名なので任意の値を設定できます。
↑のソースコードでデプロイすると、下記のようなオーソライザーが自動で作成されます。


$ chalice deploy
デプロイします。


Cognito認証が付与されていればOKです。



簡単でしたね…
よくある質問|ChaliceでAPI GatewayにCognito認証を付ける方法
- ChaliceでAPI GatewayにCognito認証を付けるにはどうすればよいですか?
-
ユーザプールを作成し、authorizerを設定すればOKです。
詳しくは先ほどのソースコードをご確認ください。
- Chaliceをローカルで起動した場合はどうなりますか?
-
ローカル起動した場合、認証は無視されます。
ですので、直接APIを実行しても認証エラーにはなりません。
- IAM認証を付ける方法を教えてもらえますか?
-
下記をご覧ください。
IAM認証はこちら!【AWS Chalice】API GatewayにIAM認証を付ける方法 AWS ChaliceでAPI GatewayにIAM認証を付けたいんだけど、やり方が分からないんだよね… こんな疑問にお答えします。 この記事で分かること ChaliceでAPI GatewayにIAM… - カスタムオーソライザーを付ける方法を教えてもらえますか?
-
下記をご覧ください。
カスタムオーソライザーはこちら!【AWS Chalice】カスタムオーソライザーを設定する方法 AWS Chaliceでカスタムオーソライザーを設定したいんだけど、やり方が分からないんだよね… こんな疑問にお答えします。 この記事で分かること Chaliceでカスタムオー… - 公式ドキュメントはありますか?
-
下記になります。
まとめ|API GatewayにCognito認証を付けるのは超簡単
今回は、ChaliceでAPI GatewayにCognito認証を付ける方法について解説しました。
以下が本記事のまとめになります。
- ChaliceでAPI GatewayにCognito認証を付けるにはCognitoUserPoolAuthorizerクラスを使う。
この記事があなたのお役に立てば幸いです。
サイト内には、他にも初心者向けの記事を多く投稿していますので良ければ参考にしてみてください。
最後までお読みいただきありがとうございました!

