Javaコードで理解するTOTPの仕組み
庄司です。 システムやサービスへのアクセスでユーザ名とパスワードだけの認証はセキュリティが弱く、多くのサービスでは多要素認証 (Multi-Factor Authentication) の利用が一般的になっています。 例えば AWS アカウントのルートユーザーアクセスでは多要素認証 (MFA) の利用が強く推奨され、企業のポリシー等でも MFA の利用が強制されることも増えています...
記事を読むOIDCトークンによるAWSの一時的な認証情報の取得方法
庄司です。 2023年1月4日の CircleCI のセキュリティインシデントのレポートの中で、セキュリティのベストプラクティスの1つが次のように書かれています。 可能な限りOIDCトークンを使用し、CircleCI に長期間の認証情報を保存しないようにする。 AWS のための CI/CD では、GitHub Actions には AWS for GitHub Actions リポジトリの configure-aws-credentials に OIDC トークンを使用する実装があります...
記事を読む音声合成マークアップ言語 - Speech Synthesis Markup Language (SSML)
庄司です。 現在では様々なところで、コンピュータを使用した音声合成を聞くことができます。 音声合成のマークアップ言語の仕様として、W3C による「Speech Synthesis Markup Language (SSML) Version 1.1」があります。 この SSML をサポートするサービスには次のようなものがあります...
記事を読むAmazon Cognito user pools の認証フロー
庄司です。 Amazon Cognito user pools は Web やモバイルアプリケーションの認証、認可、およびユーザ管理機能を提供する Amazon Cognito のユーザディレクトリサービスです。 Cognito user pools を使用するといわゆる JWT 認証 (基本から理解するJWTとJWT認証の仕組み) に利用できる AccessToken、IdToken などを得られます。 Cognito user pools を利用する目的は、大きく次の2つがあるでしょう...
記事を読むApple Touch ID Keyboard を使ったパスワードレス認証
庄司です。弊社では隔月で有志によるハッカソンを開催しています。 1 月のハッカソンで、私は年が明けてすぐに購入した「Appleシリコン搭載Macモデル用Touch ID搭載Magic Keyboard - 英語(US)」を、昨年公開した記事「WebAuthn でパスワードの無い世界へ」の通りに利用することをテーマに参加しました。 試してみたところ、いくつか課題が見つかりました。 旧記事の通りに進めようとした場合の課題は次の通りです...
記事を読むJJUG CCC 2022 Fall
庄司です。 これは、豆蔵デベロッパーサイトアドベントカレンダー2022第4日目の記事です。 11月27日にオフラインとオンラインのハイブリッドで JJUG CCC 2022 Fall が開催されました。春と秋に開催される JJUG CCC では COVID-19 パンデミック以来久しぶりのハイブリッド開催となりました。 --> JJUGとは日本 Java ユーザグループ (JJUG) は、2007年4月に発足した Java 技術の向上・発展、開発者の支援を目的とした任意団体です...
記事を読むGitHub Actions ワークフローでリテラルの AWS アカウント ID を使用しないためのヒント
庄司です。 GitHub Actions で AWS にアクセスする場合 GitHub の OIDC プロバイダから発行される ID Token を AWS の IAM 外部プロバイダとして使用できます。 これにより、AWS_ACCESS_KEY_ID や AWS_SECRET_ACCESS_KEY のような永続的なクレデンシャルを設定する必要がなくなり、誤って公開されるリスクが大きく減少しました...
記事を読むEnvoy OAuth2 Filter を使ったログイン
庄司です。 いくつか Envoy Proxy の JWT Authentication や External Authorization を使った認証や認可の記事を書いてきました。 今回は OAuth2 Filter を使った例を説明します。 あらためて説明すると、Envoy Proxy は C++ で書かれた軽量かつ高速なプロキシです。 Envoy Proxy は構成を動的に変更でき、ゼロダウンタイムで反映できる特徴を持っています...
記事を読むAWS Outposts の紹介
庄司です。 IoT でクラウドサービスを活用しようとするときの大きな関心事の1つにレイテンシーがあります。 ここで、光の速度に関連した定義をみてます。 1983年の国際度量衡委員会(CIPM)によって「1メートル=光が真空中を2億9979万2458分の1秒の間に進む距離」と定められています。この秒数は、同じく1983年に確定した光の速度「秒速29万9792.458キロメートル(=秒速2億9979万2458メートル)」から得られたものです。 地球の外周は約40,075km とされています...
記事を読むnpm モジュールを GitHub Actions で GitHub Packages にデプロイする
庄司です。 GitHub Packages は、Docker イメージ、npm、Maven、NuGet、RubyGems などさまざまな言語で書かれたモジュール/パッケージを管理できます。 この記事では、OpenAPI Generator で生成した TypeScript モジュールを GitHub Actions を使って GitHub Packages にデプロイする方法を説明します...
記事を読む