第1回 OpenAPI Generator を使ったコード生成
庄司です。 REST API の仕様を記述する OpenAPI Specification があります。この仕様では、JSON または YAML で API の仕様を記述します。 この業界標準の仕様で API を定義すると、開発に利用しやすいフォーマットされたドキュメントの提供やテスト用のモックを提供できます。 この定義を使うツールに OpenAPI Generator があります...
記事を読むセキュリティソフト ESET を利用している環境で Rancher Desktop (lima) を使う
庄司です。 皆さんは mac でセキュリティ対策ソフトウェアに何をお使いでしょうか。私は ESET を使用しています。 ESET のファイアウォール機能を有効にして Docker Desktop の代替として Rancher Desktop や lima を使用していると、イメージを pull するときにエラーが発生し困ったことがあり、その回避方法について調べてみました。 --> Warningこの記事では、ファイアウォールにアプリケーションを許可する方法で回避する手順を示しています...
記事を読むADFSとCognito Userpoolsの連携
庄司です。 ブラウザなどの UI からアクセスするマイクロサービスでは JWT 認証 (OpenID Connect 等) を利用することが一般的です。AWS を利用している場合には、Amazon Cognito user pools (Cognito Userpools) で JWT の発行が可能です。 Cognito Userpools を利用する場合には、システムにアクセスするユーザーをこのサービスに登録する必要があります...
記事を読むサービスメッシュが解決しようとしている課題
庄司です。 この記事では、サービスメッシュがどのような課題を解決しようとしているかについて概説します。 アプリケーションは、時間の経過とともに大きく複雑になっていきます。モノリスで始めたアプリケーションもやがて単一のチームでは手に負えなくなります。 やがて分割する時期を迎えます。アプリケーションを分割したそれぞれの部分 (パート) を SOA 時代以降では「サービス」と呼びます...
記事を読むWindows、macOS で sshfs を使用する
庄司です。 この記事では、Windows、macOS で sshfs を使用する手順を説明しますが、この説明の前に、sshfs について調べるきっかけになった背景を記述させてください。 私は Docker Desktop の代替として Rancher Desktop を使っています。macOS 上では Rancher Desktop の仮想 Linux 環境に lima が利用されています。 Windows や macOS の場合、仮想 Linux 環境上でコンテナが動作します...
記事を読むアーキテクチャ・デシジョン・レコードの勧め
庄司です。 Michael Nygard 氏は「DOCUMENTING ARCHITECTURE DECISIONS」で、特にアジャイル開発では最初の時点でアーキテクチャが決まることはなく、また包括的なドキュメンテーションには価値がなく、小さなピースのドキュメントが全てのステークホルダーに必要となるため「アーキテクチャ・デシジョン・レコード (ADR: architecture decision record)」と呼ばれるドキュメントを提案しています...
記事を読むドメイン駆動設計のコンテキストマップ
庄司です。 ドメイン駆動設計の戦略的設計では、システム全体をどのように境界づけられたコンテキストを統合するかを表すコンテキストマップ (Context Map) を描きます。さらに、このコンテキストマップには時間の経過とともに、コンテキストが追加、更新、削除のように修正されていくことも考慮しておく必要があります。 したがって、コンテキストマップは単なる画像としてではなく、git などのバージョン管理ツールで比較が容易なテキストで記述できると便利です...
記事を読むS3 の静的 Web サイトをセキュアに Envoy でホスティング
庄司です。 モダンな UI のフレームワークは静的なコンテンツとしてパッケージングされることが主流となっています。これは変化の激しい UI とそれと比較すれば比較的変化のスピードが遅くてよいバックエンドとの関係で理にかなっています。UI のこうした静的なコンテンツの配信では多くの SaaS 製品で CloudFront のような CDN が利用されています。しかし、エンタープライズで利用されるフロントエンドの場合には VPN を通じたアクセスのみを許可している場合が多くあります...
記事を読む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 の検証について説明しています...
記事を読む