Envoy OAuth2 Filter を使ったログイン
庄司です。 いくつか Envoy Proxy の JWT Authentication や External Authorization を使った認証や認可の記事を書いてきました。 今回は OAuth2 Filter を使った例を説明します。 あらためて説明すると、Envoy Proxy は C++ で書かれた軽量かつ高速なプロキシです。 Envoy Proxy は構成を動的に変更でき、ゼロダウンタイムで反映できる特徴を持っています...
記事を読む第5回 Open Policy Agent とサイドカーパターンによる認可の実装
庄司です。 前回の記事で、「挨拶の音声を生成する」コマンド (以降 Hello コマンドまたは Hello サービスといいます) を完成させました。 この記事では、このコマンドの実行権限チェックに Open Policy Agent (OPA) を使って説明します。 図のようにサービスは、3つのコンテナイメージで構成された、docker-compose または Pod です...
記事を読む第2回 イベントストーミングとドメイン駆動設計の戦略的設計
庄司です。 この記事は、「第1回 OpenAPI Generator を使ったコード生成」の続編です。 この記事のコードは、GitHub リポジトリに置いています。 前回の記事では、簡単に Spring Boot アプリが作成できるということを強調するためにシンプルな構成のコードにしていました。 ここで、少し現実感を持つために、このアプリケーションを利用するストーリーを描いてみます。 現在、ある宇宙船の設計を行なっています。人類が多惑星種となるために、この船には冬眠カプセルが装備されています...
記事を読むサービスメッシュが解決しようとしている課題
庄司です。 この記事では、サービスメッシュがどのような課題を解決しようとしているかについて概説します。 アプリケーションは、時間の経過とともに大きく複雑になっていきます。モノリスで始めたアプリケーションもやがて単一のチームでは手に負えなくなります。 やがて分割する時期を迎えます。アプリケーションを分割したそれぞれの部分 (パート) を SOA 時代以降では「サービス」と呼びます...
記事を読むEnvoy を使用して ID Token (OIDC) を検証する
庄司です。 Envoy proxy は API を使って動的に構成すると無停止で設定変更等を行うことができます。このような操作は 通常 Istio や AWS App Mesh のようなコントロールプレーンで行うことになります。 この一連の記事では Envoy proxy 単体の機能を説明するために静的な設定を用いて説明しています...
記事を読むEnvoy と Open Policy Agent を使用した認可
庄司です。 Envoy proxy は API を使って動的に構成すると無停止で設定変更等を行うことができます。このような操作は 通常 Istio や AWS App Mesh のようなコントロールプレーンで行うことになります。 この一連の記事では Envoy proxy 単体の機能を説明するために静的な設定を用いて説明しています。 認証についての記事で OpenID Connect の ID Token の検証について説明しています...
記事を読むDapr on Jetson Nano with k3s
庄司です。 マイクロサービスのように、多言語プログラミング (polyglot programming) が前提の環境では、認証認可やログのような横断的関心事 (cross-cutting concern) をアプリケーションのコードとして実装すると、各言語やフレームワークごとに移植が必要となり最新化への足かせとなります...
記事を読む