最近はCDKなどの他のツールに押され気味のServerlessFrameworkですが、API Gateway+Lambda+ DynamoDBといった構成の場合、記述のシンプルさ故、ServerlessFrameworkを選択するケースはまだ多い印象です。今回は、GoのアプリケーションをServerlessFrameworkで構築する方法について記載します。 ServerlessFramewor […]
Serverless FrameworkでAppSyncを開発する基本的な方法や、ローカル開発のためにserverless-offlineと連携する方法、また、最近リリースされた、VTLを書かなくて済む、Direct Lambda Resolversを設定する方法についてメモ。 こちらの記事を参考にさせていただきました。 https://qiita.com/G-awa/items/095faa9a […]
amplifyでECSをデプロイする機能がリリースされたので使ってみました。 https://aws.amazon.com/jp/about-aws/whats-new/2020/12/amplify-cli-enables-serverless-container-deployments-using-aws-fargate/ この記事の通り進めていくと、ネットワークの設定など行うことなく、簡単に […]
Cognitoでは認証をしていないユーザー(ゲストユーザー)にロールを設定することができるので、その機能を使ってみました。この機能をAPI Gatewayに使用することで、未認証ユーザ用のクレデンシャルを付与しないとAPIにアクセスできないため、認証は不要だけどどこからでもアクセスされるのは防ぎたいという要件を満たすことができます。 ポイント Cognitoの未認証ユーザの機能を実装するにあたり、 […]
AWSのCodeシリーズでCI/CDを構築する際に、異なるアカウントのS3からファイルをコピーしたいという要件があり、少しハマったのでその解決方法をメモ。 やり方は3つある “s3 クロスアカウント”などで検索すると、AWS公式のサイトがヒットして、やり方が書いてあります。 https://aws.amazon.com/jp/premiumsupport/knowledge […]
AWS IoT Coreを使ってみたのですが、ネットで情報を漁っていると意外と古い&ざっくりした情報が多く、トピックごとの権限を設定するのに少し詰まったので、備忘録として残しておきます。 AWS IoT Coreのリソース作成 まずはAWSのマネジメントコンソール上で、IoT Coreの設定を行っていきます。以下のサイトで詳しく書いてあったので、参考にしました。「AWS IoTにモノを登録 […]
EKSを導入することになったので、コンテナの復習としてECSの使い方をメモ。80番ポートにアクセスすると文字列を返却する超簡単なexpressのイメージを作成しているので、今回はそれを使う。 イメージをローカルで動作確認 以下コマンドで、コンテナが立ち上がる。ブラウザでlocalhostにアクセスすると、「Hello World」と表示される。–nameの箇所は任意。 確認できたら、以 […]
タイトルの通り。作成してみたので、ブログに残しておきます。前提として、CodeBuildやCodePiplelineのIAMロール(S3へのアクセス権限の付与)などはされていること、CodeBuild上でartifactを生成するbuildspec.ymlは作成されているものとします。これらの情報は、検索すればたくさん出てくるはず。
モジュールのインストール .envファイルを作成し、環境変数を設定 以下をserverless.ymlに追記 以下のような形式でjsファイルから値を取得できる
要約 基本、認証に使用するIDトークン(JWT)にユーザ情報が含まれているので、それをbase64デコードしてやればOK。ただし、クライアントに見せたくない(=JWTに含めたくない)属性の場合は、少し工夫が必要という話。 内容 JWTから取得する場合 以下、LambdaをNode.jsで書いた場合の参考 以下のパラメータが得られる。(値は全て書き替えてます。)custom:testというのは、手動 […]