AWS Cognito ユーザプールでユーザ属性(カスタム属性)をIDトークンに含める

CognitoのLambdaトリガーを使ってみようと思い検証をしていたところ、定義したカスタム属性がIDトークンに含まれていなかったので対処法を調べました。特に大したことない内容ですが忘れないように記述します。

Keycloakの知識を背景に、AWS Cognitoを調査してみて感じたこと

Keycloakの使用方法はある程度確認したので、今度はAWSのCognitoを自分への夏休みの宿題としてちょっとだけ調査してみました。 実際にCognitoを触ってみて、Keycloakとどこが違うのかを軽く確認したのでその内容を感想レベルで記述していこうと思います。

KeycloakのAdmin REST APIでユーザを作成する

前回の記事でAdmin REST APIを使ってレルムの作成を行いました。 今回はユーザの作成をして、そのユーザにレルムの作成権限をマッピングしてみようと思います。 マスターレルムにユーザを作成して、そのユーザでレルムを作成することで作成したレルムの管理…

KeycloakのAdmin REST APIでレルムを作成してみる

Keycloakを使用する機会があったので、色々と使い方を調査してみました。 Keycloakは管理画面を提供してくれているのですが、今回は管理画面からではなくAdmin REST APIを使用して「レルム」の作成をしてみます。 なお、管理画面の操作方法については公式ド…

Stripeでサブスクリプション決済のAPIを試してみた Part2

前回の記事でクイックスタートでStripeのサブスクリプション機能を試してみました。 決済は完了後、カスタマーポータル画面を表示させるところまでは確認できましたが、 サンプルコードにはWebhookをハンドリングする処理があり、こちらの動作をまだ確認でき…

Stripeでサブスクリプション決済のAPIを試してみた Part1

オンライン決済を使ってサブスクリプションの仕組みを取り入れたい場合にどのようにすればよいか調べてみました。 実際に試してみた方がわかりやすいと考え、使いやすそうな決済APIサービスを使ってオンライン決済の流れを確認してみることにしました。 オン…

Google Translation APIのカスタムコネクタを作成する方法

今回はカスタムコネクタを作成する手順について記載します。 前回の投稿ではPowerAppsから既存のコネクタを使用していましたが、 今回作ったカスタムコネクタで差し替えて前回作成したPowerAppsを動作させたりすることが可能となります。 カスタムコネクタと…

PowerAppsで簡単な翻訳アプリを作成する方法

今回はPowerAppsでMicrosoftのTranslatorというサービスを使用して簡単な翻訳アプリを作成してみようと思います。 PowerAppsとは コネクタとは PowerAppsでアプリを作成する Power Apps Studioを開き、空のアプリの作成する まずは基本的な機能を実装する ア…

コンシューマ駆動契約テスト用ツールのPactを使う

以前の記事で、Spring BootのソースコードからOpenAPI仕様のフォーマットのAPI定義書のYamlファイルを生成するようにしました。このYamlファイルを受け取ったフロントエンド・エンジニアはバックエンドの仕様を確認しながら開発を開始できるようになります。…

OpenAPIのAPI定義書をソースコードから自動生成する

ほとんどのWebサービスの開発では、Webサービスのフロントエンドを担当するフロントエンド・エンジニアとバックエンドを担当するバックエンド・エンジニアに分かれて開発します。フロントエンドは、バックエンド側が提供するHTTPベースのAPIを利用して構築さ…

GitLab CI/CD のビルド環境から外部のリポジトリを取得する

この記事は、GitLabのプライベートリポジトリでGoのパッケージの管理、CI/CDでの運用を調査したものです。

Serverless Framework で API Gateway のカスタムドメインを設定する

Serverless Framework を用いて、API Gateway の カスタムドメインを設定する方法を調査しました。

既存のCognitoにTerraformからLambdaトリガーを設定する

Terraform でインフラの構成構築を行っている際に、既存の CognitoにLambdaトリガーを取り付けたい、というシーンがありました。 Cognito IDP の Data Sources(data ブロックで表現される、Terraformの外部で定義された情報を参照できるリソース)を頼りに…

Deno を Solaris (OpenIndiana) で動かす

JavaScript/TypeScript ランタイムの Deno を OpenIndiana に移植しました。

GitLab で管理している AWS SAM プロジェクトの自動デプロイに AWS CodePipeline を使う

GitLab で自動デプロイを実施するには GitLab CI/CD が使えるのですが、今回は AWS CodePipeline (と CodeCommit、CodeBuild) を使って AWS SAM プロジェクトの自動デプロイを構成してみました。

slack-go で Sign in with Slack を試す

Go 言語のライブラリ slack-go を使って Sign in with Slack の動作を見てみました。

Docker Compose CLI を使って Keycloak を AWS ECS にデプロイする

Docker Compose CLI を使い、docker-compose.yml の設定から Keycloak を AWS ECS にデプロイします。

Keycloak を試してみる

オープンソースのアイデンティティ・アクセス管理ソフトウェアである Keycloak を試してみました。 Keycloak を OpenID Connect の Identity Provider としてセットアップし、クライアントと認可コードフローの動作を確認します。

AWS Lambda(Go) で Lambda レイヤーを活用する

Serverless Framework を使い、AWS の Lambda(Go) で Lambdaレイヤーを活用する方法を調べてみました。

Terraform で ECS 環境を構築する④ 〜DynamoDB, SQS, ECR, CodePipeline 編〜

このシリーズの一旦の完結編です。 前回構築した ECS にデプロイする仕組みを構築します。 また、コンテナアプリから利用する DynamoDB と SQS も Terraform で構築します。 blog.linkode.co.jp blog.linkode.co.jp blog.linkode.co.jp

API Gateway から Lambda 関数を非同期で呼び出す

Serverless Framework を使い、AWS の API Gateway から Lambda 関数を非同期で呼び出す方法を調べてみました。

Terraform で ECS 環境を構築する③ 〜ECS on Fargate 編〜

前回、前々回の続きで、Terraform で ECS 環境の構築を行います。 今回は、ECS の部分を構築します。 blog.linkode.co.jp blog.linkode.co.jp

Terraform で ECS 環境を構築する② 〜ドメイン設定・ALB編〜

前回の記事から、Terraform で ECS 環境の構築に取り組んでいました。 今回は、ドメインの設定とロードバランサの設定を行い、HTTPS で外部からのリクエストを受けられるようにします。 blog.linkode.co.jp

Terraform で ECS 環境を構築する① 〜ネットワーク編〜

以前の記事で、Terraform の基本的な使い方を紹介しました。ここから何回かに分けて、ECS を使ってアプリを動かす環境を Terraform で構築する方法を紹介していきます。 blog.linkode.co.jp

Word2VecでElasticsearchのSynonymを生成する

Elasticsearchには、あらかじめ設定されたSynonym(シノニム/同義語/類義語)で検索を行える機能があります。 今回は、このSynonymの設定を自動的に生成した手順を紹介します。

Terraform を使って IaC を始める

はじめに AWS をはじめとした各種クラウドサービスのインフラを安全かつ効率的に管理するためのツールである Terraform を導入します。 実際に、いくつかの AWS のリソースを Terraform で作成してみます。 Terraform を導入するにあたって IaC (Infrastruct…

Amazon ECR で Docker イメージを保管する

コンテナ開発において作成した Docker イメージを保管するコンテナレジストリとして、 AWS で提供されている Amazon ECR (Elastic Container Registry) を利用してみます。

Istio を Amazon EKS で利用する

前の記事で、サービスメッシュを実現する Istio をローカル環境で利用してみましたが、今回は Amazon EKS で利用してみます。 blog.linkode.co.jp

Developpers Summit 2020 Summer に参加してきました

2020年7月21日に開催された「Developper Summit 2020(デブサミ2020夏)」に参加しました。 今回は、初のオンライン開催で開催されました。 関連資料等についてはこちらにまとめられておりますが、私が参加したセッションの内容のレポートを書いておこうと思…

Helm を使って Kubernetes のアプリケーションをデプロイする

ここまで、Kubernetes(K8s)クラスタのアプリケーションをデプロイする際には、アプリケーションの設定内容を記述したマニフェストファイルを作成し、 kubectl コマンドで適用していました。しかしながら、設定ファイルごとに kubectl コマンドを実行するた…