セッションマネージャを利用してオンプレミスサーバにssh接続

2026年6月30日に、AWS Systems Manager (SSM) の「アドバンストインスタンス層 (Advanced-instances tier)」が廃止されました。これまでアドバンストインスタンス層にアップグレードしないと利用できなかったオンプレミスのマネージドインスタンスへセッショ…

WSL container

この記事は、WSL containerのインストール方法の備忘録です。 WSL containerとは何か Windows OS上にインストールしたWindows Subsystem for Linux (WSL) を利用して、コンテナをwslcコマンドで実行できるように拡張されています。 これにより、Docker Deskt…

OIDCを使用してAWS Systems ManagerのSession Managerに接続

OpenID ConnectのID Token (JWT)を使って、AWSのマネジメントコンソールにアクセスするコードはいろいろなところで紹介されていると思います。 今回そこからAWS Systems ManagerのSession Managerに接続できないか試したところあっさり接続できたので記録し…

レビュー: OpenID Connect入門

いろいろなWebサービスを利用していると、このサイトのパスワードなんだっけ?わからん、リセットするかみたいなことした経験はないでしょうか。 多くのパスワードを覚えずに1度サインインすれば、各サービスで毎回サインインをしなくてもよくなる機能として…

IAMロールでAWSマネージメントコンソールにアクセスする

私はAWSマネジメントコンソールへのアクセスにGMailの認証を利用したり、あるいはLMS (Learning Management System) の認証を利用してIAMロールを活用してアクセスしています。 いずれも、使用しているのはOpenID ConnectのID Tokenです。 GMailの場合のIAM…

「TiDB実践入門」レビュー

こんにちは、庄司です。 皆さん、MySQLは知っていますか?ここではNewSQLと呼ばれるMySQL互換のTiDBを解説した本「TiDB実践入門」を紹介します。 NewSQLって何? ソフトウェアエンジニアにとってRDBMSは長い付き合いだと思います。私はオンプレ時代、長い間O…

JJUG CCC 2025 Spring参加の記録

こんにちは、庄司です。今回もボランティアスタッフとしてJJUG CCC 2025 Springに参加しました。 セッション一覧 タイムテーブル 【Room E】 JJUGパネルトーク: ローカルJavaコミュニティの底力 私は、関ジャバからパネリストとして参加しました。COVID-19パ…

WinGetでAWS CLIをインストール

WinGet (Windows Package Manager)がとても便利でよく使います。 winget search aws と検索すると AWS に関連したパッケージも多く見つかります。 今回これを使って AWS CLI をインストールしたのと、SSO の構成を行ったのでそのメモを兼ねて記事にしました…

Javaでオープンバッジのメタデータを読み取る

はじめに ICT関連の資格を中心に、資格取得を可視化するデジタルバッジの活用が盛んに行われています。デジタルバッジの定義について、天野氏は「デジタルバッジとは、バッジを発行する個人あるいは組織とバッジを獲得するのに満たすべき基準、証拠を評価す…

この一年をふりかえる

こんにちは、庄司です。 この記事は、AWS Community Builders Advent Calendar 2024の1日目の記事です。 さっそくですが、この一年の活動をふりかえってみたいと思います。 1月12日の「[JAWS-UG 大阪] あけおめことよろ!re:Invent 2023 re:Cap ではじめる事…

Postmanを使ってChatworkにメッセージを投稿する

以前 Postman を使って API のテストをしていましたが、いつの間にか Flows という機能が登場していて、それを使うと API Gateway や Lambda を用意しなくても簡単な Web サービスの連携に使えることを知りました。 これを知ったきっかけのイベントは 【大阪…

WSL2のUbuntuにamazon-ssm-agentをインストールした作業ログ

ドキュメントに書かれていた snap コマンドではエラーになったので、次のコマンドでインストール。 mkdir /tmp/ssm cd /tmp/ssm wget https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/debian_amd64/amazon-ssm-agent.deb sudo dpkg -i amaz…

ネイティブ呼び出しが気になった件

これは Java Advent Calendar 2023 の20日目の記事です。 Testcontainers でDockerにアクセスできることからUNIXドメインソケットの利用にネイティブ呼び出しが使われているのでは?と気になって調べてみました。 UNIXドメインソケットとは何かですが、Unix…

Momento Topics を調べた

Momento Advent Calendar 2023の18日目の記事です。 さて、皆さんは pub/sub って聞いたことがありますか。pub/sub とは Enterprise Integration Patterns の Messaging Patterns の1つとして挙げられていて、Publish-Subscribe Channel というのが正式な名…

Javaの帰還 (Return of the Java)

この記事は AWS Lambda と Serverless Advent Calendar 2023 14 日目の記事です。 昨年2022年re:Invent 2022のAWS Lambda SnapStartの発表でJava Runtimeが再び注目されました。 AWS Lambdaの登場からの歴史 2014年11月にAWS Lambdaが発表されました。この発…

AWS Community Builders program に参加できてよかったこと

この記事はAWS Community Builders Advent Calendar 2023の12日目の記事です。 私は COVID-19 パンデミックの前 Java Community の JJUG や 関ジャバ、あるいはScala関西で数回登壇したことがありました。その後パンデミックになりオンライン登壇も何度かし…

Akka gRPC で Hello World

プログラミング言語として Scala を使う場合、フレームワークとして Akka がよく利用されます。 また、gRPC の API は Protocol Buffers (protobuf) という Schema 定義言語で規定します。これは日本CTO協会が監修・編纂しているDX Criteriaで良いプラクティ…

KeycloakのSAML2 IdPをAmazon Cognito user poolsと連携する

Keycloak は SAML の Identity Provider (IdP) としてあるいは OpenID Connect (OIDC) の OpenID Provider (OP) として使用することができます。 2層アーキテクチャ (Two-tier Architecture) や 3層アーキテクチャ (Three-tier Architecture)、またはより多…

Envoy Proxyを使ったファイルベースの動的コンフィグレーションとk8sのライフサイクル

みらい翻訳のカレンダー | Advent Calendar 2022 - Qiita に投稿した2つの記事 (「Envoy Proxyを使ったファイルベースの動的コンフィグレーション」、「Envoy Proxyを使ったファイルベースの動的コンフィグレーション (EKS)」) では、いずれも起動前に Envoy…

Envoy Proxyを使ったファイルベースの動的コンフィグレーション (EKS)

メリークリスマス ! こんにちは、ed (edward) です。 この記事は、みらい翻訳のカレンダー | Advent Calendar 2022 - Qiita の25日目です。 前回17日目はローカルPC上の Kubernetes を使ったファイルベースの動的コンフィグレーションを説明しました。 今回…

Envoy Proxyを使ったファイルベースの動的コンフィグレーション

こんにちは、ed (edward) です。 この記事は、みらい翻訳のカレンダー | Advent Calendar 2022 - Qiita の17日目です。 さて、SaaS として提供している Mirai Translator のようなプロダクトの場合、原則として機能追加等のデプロイ、リリースをゼロダウンタ…

ドメイン駆動設計と「コントロールプレーン」、「データプレーン」

これは、ドメイン駆動設計(DDD) Advent Calendar 2022 9日目の記事です。 ドメイン駆動設計では、レイヤー化アーキテクチャ (Layered Architecture) でエンティティやバリューオブジェクト、ドメインイベント、ライフサイクルに関連する集約 (Aggregate)やリ…

リアクティブシステムとドメイン駆動設計の学習コンテンツ

これは、ドメイン駆動設計(DDD) Advent Calendar 2022 6日目の記事です。 2022年11月28日から12月2日の間のラスベガスでの AWS イベント、re:Invent のキーノートの冒頭で非同期の重要性が説明されました。 リアクティブシステムは、非同期とイベント駆動型…

Output webcam directly via hdmi on tv (ATEM Mini)

ATEM Mini を購入したのを機に、Raspberry Pi を使って、USB 接続した WebCam をそのまま HDMI に出力してみました。 ここで説明する方法は、Desktop (GUI) は不要です。コンソールログイン ("B1 Console" or "B2 Console Autologin") を使用します。 方法は…

ソフトウェアのパターンランゲージ年表

年月日 タイトル 日本語版タイトル 1994-10-31 Design Patterns: Elements of Reusable Object-Oriented Software オブジェクト指向における再利用のためのデザインパターン 2002-11-05 Patterns of Enterprise Application Architecture エンタープライズア…

Envoy と Open Policy Agent を使用した認可

Envoy proxy は API を使って動的に構成すると無停止で設定変更等を行うことができます。このような操作は 通常 Istio や AWS App Mesh のようなコントロールプレーンで行うことになります。 この一連の記事では Envoy proxy 単体の機能を説明するために静的…

Envoy を使用して ID Token (OIDC) を検証する

以前構築した S3 にアクセスする Envoy proxy を拡張して、Amazon Cognito Userpool で認証されたユーザのみがこの静的コンテンツにアクセスできるようにしたいと思います。 Envoy proxy は API を使って動的に構成すると無停止で設定変更等を行うことができ…

S3の静的WebサイトをEnvoyでホスティング

S3 に静的なコンテンツを配置して公開する場合、よく見られる構成は CloudFront とを組み合わせるパターンです。ほとんどの場合、これで問題ありません。しかし、一部のパターン、例えばエンタープライズで利用されるフロントエンドの場合には、VPN を通じた…

Active Directory と SaaS の連携

「みらい翻訳 Advent Calendar 2021」2日目の記事です。 この記事では次のことを説明します。 Active Directory と ADFS による SAML 2.0 について EC2 上に Active Directory と ADFS を構築する手順 SAML 2.0 の IdP をテストする手順 2018 年 9 月時点で…

OpenID Connect のメモ

Amazon Cognito の署名検証のコードを書きました。 OpenID Connect (OIDC) では公開鍵方式に RSA を使用する署名検証アルゴリズムの RSA-SHA256 (RS256) がよく使用されています。 公開鍵は、JSON Web Key (JWK) 仕様にあるように JSON で公開鍵の情報が IdP…