アーキテクチャ

Linux

プロキシ備忘録

プロキシとは フォワードプロキシ プロキシにはいくつか種類があるが、基本的な役割は中継サーバー(フォワードプロキシ)。 これは、URLの読み替え、通信のキャッシュによる高速化や通信のフィルタリングによるセキュリティ向上に寄与するもの。 リバ...
Angular

ハッシュ化、暗号化

ハッシュ化とは? ハッシュ化は指定のアルゴリズムに基づき、元の文字列を不規則な値に変換する処理を指す。 不可逆であり、ハッシュ化された値から元の値を求めることはできない。 同じ文字列を同じアルゴリズムでハッシュ化した場合、 同じ処理結果とな...
アーキテクチャ

SSOとは

SSO(シングルサインオン)。1回の認証で複数サービスにログインできる仕組み。 SAML認証やOAuthといった仕組みがある。 SAML認証 SSO(シングルサインオン)を実現するための規格 認証認可を行う XMLをベースとしたマークアップ...
Java

SpringSecurity備忘録

SpringSecurityの実装で躓いたポイントを残しておく。実装については中途半端なコードを残しても仕方ないので、ここを見ればわかる、というようにドキュメントのリンクを記載するのみとする。 後半では、Jwtを使用した実装についても触れる...
アーキテクチャ

PKCE備忘録

ピクシー。Proof Key for Code Exchange by OAuth Public Clients。OAuth 2.0の 拡張仕様。 一意のcode_challenge を照合することでアクセストークン(認可トークン)の横取り...
Java

Javaのセッション

セッションとは あるショッピングサイトを見て回るとき、ページ遷移を繰り返してもショッピングカートの中身を保存しておくような仕組み。 しかし、これはあくまで説明のための例であり、セッション管理の主たる機能は認証機能にある。 セッションでログイ...
Java

SpringFrameworkのログ出力

ログ出力方法 いくつか選択肢があるが、ここではlogbackというライブラリを使用する。 JavaでLoggerを作成し、クラスパスを設定すると、logback設定ファイル (logback-spring.xml)の、対応するLoggerの...
アーキテクチャ

CORS備忘録

CORSとは? CORS(Cross Origin Resource Shareing)。 URLのホワイトリストを作成し、 外部からのリクエストを制限する。 ホワイトリストに登録されていないURLにリクエストを送ろうとした場合、返却される...
Java

CSRF備忘録

CSRFとは? CSRF (Cross Site Request Forgery)は、Cookieの認証情報を不正リンクによって悪用されること。 認証情報は一般的に、クッキー、ヘッダーに付与される。 例えば、銀行のサイトにログインすれば、ブ...