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

悩んでいる人

AWS ChaliceでAPI GatewayにIAM認証を付けたいんだけど、やり方が分からないんだよね…

こんな疑問にお答えします。

  • 本記事の執筆者
プロフィール
  • フリーランスエンジニア(保有資格約20個)
  • ブログ・アフィリエイト歴5年
  • ブランドせどりで月利50万円⇨脱サラ
  • Twitterフォロワー約2,000人
いずみん

本記事を書いている僕はエンジニア歴7年です。
AWSは業務歴2年半なので、かなり有益な情報を発信できるかと思います。

結論、ChaliceでAPI GatewayにIAM認証を付けるのは超簡単です。

具体的なソースコードを載せているので安心してくださいね。

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

いずみん

すぐ読み終わるので、是非最後まで読んでみてください!

目次

ChaliceでAPI GatewayにIAM認証を付ける方法

早速ですが、ChaliceでAPI GatewayにIAM認証を付けてみます。

STEP
現状のAPI Gatewayを確認する
※画像クリックで拡大

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

STEP
ChaliceにIAM認証を付与
from chalice import Chalice, IAMAuthorizer

app = Chalice(app_name='hello-world')

authorizer = IAMAuthorizer()

@app.route('/', methods=['GET'], authorizer=authorizer)
def index():
    return {'hello': 'world'}

authorizerを設定することでIAM認証が付与されます。

STEP
デプロイする
$ chalice deploy

デプロイします。

STEP
再度、API Gatewayを確認する
※画像クリックで拡大

AWS IAMが付与されていればOKです。

いずみん

超簡単でしたね…

よくある質問|ChaliceでAPI GatewayにIAM認証を付ける方法

ChaliceでAPI GatewayにIAM認証を付けるにはどうすればよいですか?

authorizerを設定すればOKです。

詳しくは先ほどのソースコードをご確認ください。

Chaliceをローカルで起動した場合はどうなりますか?

ローカル起動した場合、認証は無視されます。

ですので、直接APIを実行しても認証エラーにはなりません。

ローカルで認証付きAPIを実行した場合のログ
/usr/local/lib/python3.9/site-packages/chalice/local.py:352:
UserWarning: IAMAuthorizer is not a supported in local mode.
All requests made against a route will be authorized to allow local testing.
Cognito認証を付ける方法を教えてもらえますか?

下記をご覧ください。

カスタムオーソライザーを付ける方法を教えてもらえますか?

下記をご覧ください。

IAM認証を突破する方法を教えてもらえませんか?

下記をご覧ください。

公式ドキュメントはありますか?

下記になります。

まとめ|API GatewayにIAM認証を付けるのは超簡単

今回は、ChaliceでAPI GatewayにIAM認証を付ける方法について解説しました。

以下が本記事のまとめになります。

まとめ
  • ChaliceでAPI GatewayにIAM認証を付けるにはIAMAuthorizerクラスを使う。

この記事があなたのお役に立てば幸いです。

サイト内には、他にも初心者向けの記事を多く投稿していますので良ければ参考にしてみてください。

最後までお読みいただきありがとうございました!

この記事が気に入ったら
フォローしてね!

シェアしてね!
  • URLをコピーしました!
目次