ヤマムギ

growing hard days.

*

CUSTOMINEを使ってkintoneからAWS Lambdaを実行する(Cognito認証付き)

   


先日の記事「kintoneのカスタマイズ開発を超速にするCUSTOMINE」で書きましたように、CUSTOMINEでkintoneで開発すると早く楽ちんです。

そんなCUSTOMINEでは、AWS Lambdaの実行をAmazon Cognitoの認証付きで実装できます。
しかもGUIでノーコードで(これ重要)。

早速テストしてみます。

Amazon Cognitoの準備

IDプールを作成します。
IDプール名を任意で入力して、
「認証されていないIDに対してアクセスを有効にする」にチェックをしました。

IDプールのIDをメモっておきます。

AWS Lambdaの準備

どの言語でもいいんですが、とりあえず実行できるということを確認したかっただけですので、ランタイムはPython3.6で作成しました。
IAMロールはCloudWatchにログが書ければいいです。
ほかはデフォルトです。
コードは超シンプルにこちらです。

Cognitoの認証されていないロールの設定

Amazon CognitoでIPプールを作成したときに自動生成された、認証されていないロールにLambdaを実行できるポリシーを追加します。
インラインポリシーで下記を追加しました。

CUSTOMINEの設定

「やること」で「AWS Cognitoで認証を取得する」を選択しました。
IDプールを作成したリージョンを入力して、メモっておいたIDプールのIDを入力します。
条件として「レコードを保存する直前」に実行されるようにしました。

そして次にLambdaの設定をしました。

「やること」で「AWS Lambdaファンクションを実行する」を選択しました。
認証では、他の「やること」を選択できますので、ここで先程のCognito認証したやることを選択します。
リージョン、Lambdaファンクション名を入力します。

Lambdaの渡すパラメーターはJSON形式で記述します。

${文字列__1行}とすることでフィールドコード’文字列__1行‘の値をパラーメーターとして渡すことが出来ました。

条件は「他のアクションが実行した時」でCognitoのやることを選択しました。

実行してみる

対象のkintoneアプリでレコードを保存してみます。

CloudWatchでLambdaのログを確認すると、ちゃんとkintoneのレコードの値が渡っていました。

めでたし♫めでたし♫


最後までお読みいただきましてありがとうございました!
【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

 - AWS, kintone , , , , ,

ad

ad

  関連記事

kintoneの一覧に表示されているレコードのフィールドを更新する

kintoneで一括でレコード更新をするときに、書き出して、CSVの値を修正して …

Going Serverless with AWS(AWS Summit Tokyo 2017)を聞いてきました

AWS Summit Tokyo 2017でセッション「Going Server …

AWSアカウントルートユーザーのMFAでYubicoセキュリティキーを設定した

先日Yubico セキュリティキーを購入して、USBにささなければならないのがな …

AWS Step Functions まずはパラレルでLambdaを並列実行してみました

複数のlambdaの実行制御をLambdaでやってましたが、その部分をStep …

LINE BOT AWARDS 2017に応募しました

LINEの友達追加QRです。 動作のご確認にどうぞ LINE BOT AWARD …

Amazon EC2のAMIイメージを自動取得して保持日数が過ぎたら削除

画像の保存をEC2に戻した事もあってEC2のバックアップの自動取得を勉強がてらや …

AWSアカウント ルートユーザーのMFAが使えなくなったので復旧

AWSのルートユーザーどころか、MFAが使えるログインすべてが使えなくなって焦り …

EC2とRDSのMySQLを他のAWSアカウントへ移設する

他のAWSアカウントへシステムごと移設した場合の手順です。 構成はEC2とRDS …

RDS + VPC + Lambda + API Gateway + CloudFront + WAF + ACMでAPIを構築する

RDSのMySQLの情報を与えられたリクエストをキーにしてjsonで返すAPIを …

AWS Systems Manager AutomationでEC2の自動停止

Systems Manager Automationがない時代に、Lambdaを …