- 1. [過去記事]Amazon AppFlow マッピングにCSVを使ってみる
- 2. [過去記事]lambdaからAPI Keyが設定されたAPIを実行する
- 3. [過去記事]AWS lambda Node.jsの追加モジュールを使って他のAPIを実行してみる(requestモジュール使用 現在は非推奨)
- 4. [過去記事]AWS lambda Node.jsの追加モジュールを使用せず他のAPIを実行してみる
- 5. PowerBIとRedshiftを接続(インターネット経由)
- 6. 問い合わせフォームの内容をシステム入れ替えをしないでAIでいい感じにしてAsanaに投入する
- 7. [過去記事]AWS S3のバケットのCSVが更新・登録されたことをきっかけにLambda関数を実行してみよう!
- 8. AWS CDK(とマネジメントコンソール)でAmazon Cognitoの招待メッセージをカスタマイズする
- 9. AWS CDK Workshop(TypeScript)をNode.js 20.xでやりたい場合
- 10. 【Rails × AmazonS3】 RailsアプリでAmazonS3を利用し、本番環境に画像をアップロードする
- 11. 世界最速!?Amazon Bedrock の Custom model import の機能検証
- 12. 【AWS×Webアプリ】CloudFrontのキャッシュ削除(SAM)
- 13. Instagram APIで自分の投稿へのコメントに自動返信するAWS Lambdaの実装
- 14. CloudFormationでParameter指定できるようにする
- 15. 毎日の電気量を通知する仕組みをLambdaで作った
- 16. VPCエンドポイントを使って、脱NATしてみたかった
- 17. DynamoDBを触ってみた
- 18. 【AWSハンズオン】QuickSightによるデータ可視化
- 19. AWS CLI Command Reference(amplify)の逆引きシート作ってみた
- 20. AWS Client VPN Basic ハンズオン パターン1 相互認証 (証明書ベース) をAWS CLIでやってみる
[過去記事]Amazon AppFlow マッピングにCSVを使ってみる
## 情報
内容は下記と全く一緒でマッピング部分だけCSVで行ってみます!
https://qiita.com/miriwo/items/ba3830030b5fbba6cdad
## 準備
転送転送もとのCSVも引用記事と同じものを使います。
“`test.csv
id,first_name,last_name,password,age,
1,Tarou,Yamada,abcd1234,20,
2,Hanako,Yamada,abcd1234,22,
3,Tarou,Satou,abcd1234,24,
4,Hanako,Satou,abcd1234,16,
“`下記の内容に沿ってフローを作成し、「マッピング方法」の選択部分の直前まで設定を進めます。
https://qiita.com/miriwo/items/ba3830030b5fbba6cdad
マッピング方法は下記の様に選択します。
– マッピング方法:マッピングされたフィールドを含む.csvファイルをアップロードする
![Create_flow_-_データフィールドをマッピング-1024x
[過去記事]lambdaからAPI Keyが設定されたAPIを実行する
## 前提
今回のlambdaはNode.js 18.xを使います。また関数の作成など細かい方法は下記で記載しているので省略します!
要リンク用意(モジュール無し)
要リンク用意(モジュールあり)
また、API Keyが設定されているAPIは別のlambda関数を用意します。今回は下記の記事で作成したreturnHello関数をそのまま使ってみます!
https://qiita.com/miriwo/items/aee5fbe285a1338daac9
## 今回作るもの
![private__Online_Whiteboard_for_Visual_Collaboration-3-1024×528.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/306417/e24a77c2-cb3e-13e8-947c-f239f412e315.png)
lambda関数2個とAPI Key付きのAPIをAPI Gateway作成します。
### lambda関数1つ目(returnHello関数)
[過去記事]AWS lambda Node.jsの追加モジュールを使って他のAPIを実行してみる(requestモジュール使用 現在は非推奨)
## 今回つくるもの
![private__Online_Whiteboard_for_Visual_Collaboration-2-1024×388.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/306417/c1ae4144-f89e-c20a-4b13-279dddc59d70.png)
今回は前回の内容と似ていて、lambdaを用いてQiitaのユーザー情報APIを実行しレスポンスをconsole.logで出力してみようと思います!ただし!今回APIリクエストを実行する際は既存のhttpsモジュールではなく、requestモジュールを使って見ようと思います!
## 前提
今回の作業は前回と同様にAWSアカウントを持っていることを前提とします。さらにlambda関数作成権限とIAMロール作成権限が必要です。
今回requestモジュールのインストールはローカルのPCを用いて作成します。ローカルPCでnpmコマンドが実行できるようにしておいてください。また、ローカルのNode.jsのバージ
[過去記事]AWS lambda Node.jsの追加モジュールを使用せず他のAPIを実行してみる
## 今回作るもの
![private__Online_Whiteboard_for_Visual_Collaboration-1-1024×429.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/306417/e93efa46-4472-86c2-880a-e3414044a6c9.png)
今回はlambdaを用いてQiitaのユーザー情報APIを実行しレスポンスをconsole.logで出力してみようと思います!
## 前提
今回の作業にはAWSのアカウントを持っていることを前提とします。また、lambda関数作成権限とIAMロール作成権限が必要です。
## 準備
### lambda
まずはブラウザからAWSにログインしコンソールを開き、lambdaのホームまで移動しましょう。
その後、左サイドバーの「関数」をクリックし、開いたページで「関数の作成」をクリックしましょう。![関数_-_Lambda-1024×365.png](https://qiita-image-store.s
PowerBIとRedshiftを接続(インターネット経由)
# 1.Redshiftでの設定
## 1.1 ユーザー・グループの設定
まずは、PowerBIでアクセスする際のユーザー等を作成していきます。
以下のコードはスーパーユーザーでしかできないので注意が必要です。
### 全てのテーブルにアクセスができるユーザー・グループ
“`sql
CREATE GROUP powerbi_group_all;GRANT SELECT ON ALL TABLE TO GROUP powerbi_group_all;
CREATE USER powerbi_all PASSWORD XXX in group powerbi_group_all
“`### トランザクションテーブルにアクセスができるユーザー・グループ
“`sql
CREATE GROUP powerbi_group_transactions;GRANT SELECT ON TABLE transactions TO GROUP powerbi_group_transactions;
CREATE USER powerbi_transactions PASS
問い合わせフォームの内容をシステム入れ替えをしないでAIでいい感じにしてAsanaに投入する
## なにをしたいか
– 日々来る問い合わせフォームで効率よく処理をしたい
– タスク管理ツールで管理をしたい### できたもの
特定のメールアドレスに文章を投げるといい感じでAIがサマライズしてAsanaにタスクを作ってくれるサービス
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4221/d5184ec8-5087-7ffd-365b-fd7d578f4b84.png)### Asanaに作られたタスク例
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4221/2dd46da6-3022-c802-06b4-22ecac79ff1c.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4221/d6543851-2b7f-f477-8262-4c0f72ad861f.png)
[過去記事]AWS S3のバケットのCSVが更新・登録されたことをきっかけにLambda関数を実行してみよう!
## 前提
本記事の内容は以前に記載した下記記事実施直後の状態から実施してゆきます。
https://qiita.com/miriwo/items/7470659f070504e0fafe
## 今回つくるもの
S3の指定したバケットの指定したフォルダにCSVファイルがアップロード、もしくは既存のCSVが更新された時に下記で作成した「Hello for lambda!」を返すLambda関数を実行するようにしてみます!
https://qiita.com/miriwo/items/7470659f070504e0fafe
S3のCSVを登録・更新する作業は手作業で実施しようと思います。
![Cursor_と_private__Online_Whiteboard_for_Visual_Collaboration-1024×402.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/306417/d4b777c0-b8e4-fdb2-420f-13e6a92018ae.png)
## 準備
##
AWS CDK(とマネジメントコンソール)でAmazon Cognitoの招待メッセージをカスタマイズする
こんにちは!
ポーラ・オルビスホールディングスのITプロダクト開発チームでスクラムマスターをしている川田です。今回は、最近チームで実施したAmazon Cognitoの招待メッセージをカスタマイズする方法について、アウトプットも兼ねてご紹介しようと思います!:muscle:
# 背景
以前の記事で、私たちの開発チームが利用している技術や開発環境についてご紹介しました。https://qiita.com/t_kawada_pohd/items/ae5dcae996d06b02752b
その際には触れていませんでしたが、私たちが開発したシステムのユーザー認証にはAmazon Cognitoを利用しています。オルビスではMicrosoft Entra ID (Azure AD)によってアカウント管理を行っているので、Cognitoの外部IdPとしてEntra IDを指定することでSSOを行う構成となっています。
この対応によりオルビスで業務されているほとんどの方はSSOができる状態なのですが、一部の方は勤務体系等の都合によりEntra IDでの管理対象外となっている方がいます。そ
AWS CDK Workshop(TypeScript)をNode.js 20.xでやりたい場合
## 背景
・AWS CDK Workshop(TypeScriptワークショップ)に取り組んでいる中で、Lambdaのランタイム(Node.js)のバージョンによる差異がありコードの修正が必要だったのでその備忘です
・ワークショップはNode.js 14.xになっていますが、現在Lambdaでは14.xはサポートされていないため20.xにしたところエラーが発生し上手くいきませんでしたhttps://cdkworkshop.com/ja/
## 対象箇所
Node.js 20.xでやりたい場合にコードを修正する必要があった作業箇所ですhttps://cdkworkshop.com/ja/20-typescript/40-hit-counter/200-handler.html
“`lambda/hitcounter.js
const { DynamoDB, Lambda } = require(‘aws-sdk’);exports.handler = async function(event) {
console.log(“request:”, JSON.str
【Rails × AmazonS3】 RailsアプリでAmazonS3を利用し、本番環境に画像をアップロードする
# はじめに
はじめまして、ずっと大地と申します。
2023年11月より、オンラインスクールのRUNTEQにて、未経験からのWebエンジニア転職を目指して学習をしています。
初学者のうえ、記事を書くのは初めてです。
記述漏れや作成ファイルの記載忘れなど、不備があるかもしれないので、間違いなどあれば教えて頂けたらと幸いです。
また、人によって環境の違いがあるかと思うので、あくまでも私自身の環境で、記事投稿時の記録ということをお許しください。# 概要
アプリ開発にて実装した、`Amazon S3`での本番環境の画像アップロードについて、設定が多く難しいと感じたので、記事にしたいと思います。
`CarrierWave`を導入済み、`AWS`に`rootユーザー`、`IAMユーザー`としてログインできる状態を前提とします。https://aws.amazon.com/jp/register-flow/
# 環境
Ruby 3.2.3
Rails 7.1.3.2
CarrierWave
Amazon S3
Render.com# 手順
### rootユーザーとしてサインイン
ま
世界最速!?Amazon Bedrock の Custom model import の機能検証
## はじめに
株式会社 NTT データ デザイン&テクノロジーコンサルティング事業本部の [@ren8k](https://qiita.com/ren8k) です。2024/04/23 に,Amazon Bedrock で [Custom model import](https://docs.aws.amazon.com/bedrock/latest/userguide/model-customization-import-model.html) の機能がリリースされました。しかし,本機能を利用するためには,Bedrock の Service Quotas にて複数項目の上限緩和申請が必要な上,通常の申請フローでは利用が困難のようです.(X を見ると,申請承認に時間がかかる or 用途によっては reject される模様です.)
そこで,AWS Partner Solutions Architect(PSA)の方と連携し,Service Quotas の上限緩和申請を優先的に承認していただくことで,本機能を利用することができました.
本記事では,Custom model im
【AWS×Webアプリ】CloudFrontのキャッシュ削除(SAM)
## 目的
・AWS上の静的Webサイトホスティングを有効にしたS3をCloudFrontで公開。
・S3のコンテンツを更新した際に、CloudFrontのキャッシュ削除を行うLambdaを実装。## 前提条件
・SAMを使用してAWS上にリソースを作成する。
・Pythonを使用してLambdaを実装する。## 完成イメージ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3637963/4052117a-cea8-9fa3-e301-6712765433d2.png)## SAMテンプレート
“`template.yaml
AWSTemplateFormatVersion: ‘2010-09-09’
Transform: AWS::Serverless-2016-10-31Resources:
WebBucket:
Type: AWS::S3::Bucket
Properties:
BucketName: !Sub ${AWS::Sta
Instagram APIで自分の投稿へのコメントに自動返信するAWS Lambdaの実装
# Instagram APIを使用して投稿へのコメントに自動返信する機能
この記事では、Instagram APIを利用して、投稿へのコメントに自動でDMで返信する機能をAWS Lambdaを使って実装する方法を紹介します。Facebook MessengerのInstagram APIを活用し、コメントを解析して自動的にDMを送信するプロセスを詳しく解説します!
## 1. はじめに
Instagramの投稿に対するコメントに自動で返信する機能を作成することで、ユーザーとのエンゲージメントを高め、迅速な対応が可能になります。本記事では、その実装方法を詳細に説明します。
## 2. アーキテクチャの構成
### フローチャート
1. ユーザーがInstagramの投稿にコメント
2. Webhookを通じてコメントデータを受信
3. コメント内容を解析し、自動返信メッセージを生成
4. DMを送信### 使用する技術スタック
– **プログラミング言語**: Python
– **サーバーレスプラットフォーム**: AWS Lambda
– **APIゲートウェイ*
CloudFormationでParameter指定できるようにする
## はじめに
最近、IaC(Infrastructure as Code)でAWS環境を構築する必要がありましたが、IaCの知見がない私は環境ごとにYAMLファイルを作成するという非効率な方法をとっていました…
正直環境ごとにファイル内の設定を書き換えるのは手間がかかるので、もっと便利な方法がないかと探していてこの方法にたどり着きました!
備忘録としてこの記事では、AWS CloudFormationテンプレートでパラメータを指定し、環境ごとに異なるリソースを作成する方法について説明します!
## 前提条件
– AWSアカウント
– AWS CloudFormationの基本的な知識## CloudFormationテンプレートの例
以下に示すのは、環境ごとに異なるリソースを作成するためのCloudFormationテンプレートの例です。
“`
AWSTemplateFormatVersion: “2010-09-09”
Description: PrefixParameters:
Prefix:
Type: String
AllowedVa
毎日の電気量を通知する仕組みをLambdaで作った
## 目的
最近電気使用料が高くなってますよね?
サイトにログインして、前日使用した電気量を確認することが日課となっていましたが
面倒くさいバッチ処理で毎日LINEに通知してくれたら楽だし
そういった仕組みのようなものを作ったこともなかったので
勉強になるかな~と思ってそれっぽいものを作ろうと重い腰を上げました
この記事はその備忘録的な感じです## 構成図
仕組みとしては簡単です![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3785830/b42adc85-9d7d-392b-3aca-b6bf96a4efd2.png)
## LINE NOTIFYの設定
こちらのサイトのやり方を拝借しました。簡単簡単
https://zenn.dev/protoout/articles/18-line-notify-setup問題なくテスト通知できました
[ ]で囲われているのはトークン名です
![image.png](https://qiita-image-store.s3.ap
VPCエンドポイントを使って、脱NATしてみたかった
# はじめに
VPCエンドポイントは、NATゲートウェイなどインターネットGWを経由することなく、
プライベートなサブネットのリソースをVPCの外のサービスにアクセスできるようにしてくれるリソースです。アーキテクチャの構成次第ですが、このVPCエンドポイントを利用することで、
課金額に大きく跳ねるNATゲートウェイを使わずにすむ可能性があります。是非使えるようになっておきたいリソースなので、触ってみました!
# VPCエンドポイントとは
![](https://docs.aws.amazon.com/ja_jp/vpc/latest/privatelink/images/access-with-privatelink.png)
イメージとしては、グローバルなインターネットGWではなく、プライベートな裏口を作る感じです。
上記の図にもある通り、インターネットGWを経由せずに各リージョンリソースにアクセスできます。
https://docs.aws.amazon.com/ja_jp/vpc/latest/privatelink/privatelink-access-aws
DynamoDBを触ってみた
そろそろRDB以外のDB製品、サービスも少し勉強しておかないとなということでNoSQLデータベースと言われるAWSのDynamoDBをガチャガチャ弄ってみたのでメモ。通常のRDBとの違いや利用に向いているユースケース、具体的な利用手順などをまとめてみた。
## 1.DynamoDBの概要
NoSQL型のSaaSサービス型のデータベース製品でNoSQL名称から勘違いしがちだがSQL自体は利用可能。(NotOnlySQLだそうです)個人的な理解ではRDBで使うような複雑な結合や副問い合わせの機能は備えておらず、シンプルな問い合わせや拡張性に強みを持つDBと言った感じだ。おなじみのRDBと差別化するならば
・単一テーブルでデータが大量にある
・非構造化データ(テーブルカラムの事前定義が困難、利用しながらスケールしたい)
・複雑なテーブルの結合や問い合わせが発生しない
上記の様なユースケースのシステムに向いているDB製品と言えるのでしょう。## 2.テーブルを作成してみる
実際にAWSからサービスを利用してみるAWSマネジメントコンソールにログイン後
「DynamoDB」→「
【AWSハンズオン】QuickSightによるデータ可視化
# はじめに
Amazon QuickSightとは、様々なソースからのデータを結合し、
人々にわかりやすい洞察を提供するために使用できるAWS提供のBIツールです。本記事では、QuickSightによる可視化の基礎をハンズオン形式で学習していきます。
# QuickSight ハンズオン アーキテクチャ
大規模データの分析に必要な基盤は以下の4つに分類され、
それぞれ活用するAWSサービスが違います。![図1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3778694/df3eeedb-98e6-e593-0127-acbbd04b1432.png)
・収集 ・・・Amazon Kinesis, Direct Connect など
・保存 ・・・S3, EBS など
・分析 ・・・Amazon EMR, Redshift, Amazon Athena など
・可視化・・・QuickSight, OpenSearch, EC2 など
今回利用するサービスを、各データ分析基盤
AWS CLI Command Reference(amplify)の逆引きシート作ってみた
# [1. 新しいAmplifyアプリを作成したい](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/amplify/create-app.html)
### CLIコマンド
“`shell:command
create-app
“`### サンプルコード
“`shell:command
aws amplify create-app –name–repository –platform
“`# [2. Amplifyアプリの新しいバックエンド環境を作成したい](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/amplify/create-backend-environment.html)
### CLIコマンド“`shell:command
create-backend-environment
“`
### サンプルコード
“`shell:c
AWS Client VPN Basic ハンズオン パターン1 相互認証 (証明書ベース) をAWS CLIでやってみる
https://catalog.us-east-1.prod.workshops.aws/workshops/be2b90c2-06a1-4ae6-84b3-c705049d2b6f/ja-JP
上記AWS Client VPN Basic ハンズオンのパターン1 相互認証 (証明書ベース) をAWS CLIでやってみる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3297641/3192da66-d675-c875-eeec-3f5624636cf1.png)
ハンズオンから引用
# 1.共通設定
## 1-1.VPCの作成
### 変数設定 (IPv4 VPC CIDR block)
“`bash:コマンド
VPC_CIDR_BLOCK=”10.255.0.0/16″ \
&& echo ${VPC_CIDR_BLOCK}
“`
“`bash:出力
[cloudshell-user@ip-10-132-84-39 ~]$ VPC_CIDR_BLOCK=”10.255.0.0