これまでどういう時に使うのか、いまいち分からなかったのだが、以下のサイト様の記事を読んで理解が深まった気がする。
【Optional入門】Javaでnullを扱うベストプラクティスのご紹介
Optional は null かもしれないオブジェクトを扱うためのもので、メソッドの戻り値として使われる。Optional が持っているメソッドと組み合わせて使うことで、コードを読みやすくすることができる。
あとで読み返してみる。
これまでどういう時に使うのか、いまいち分からなかったのだが、以下のサイト様の記事を読んで理解が深まった気がする。
【Optional入門】Javaでnullを扱うベストプラクティスのご紹介
Optional は null かもしれないオブジェクトを扱うためのもので、メソッドの戻り値として使われる。Optional が持っているメソッドと組み合わせて使うことで、コードを読みやすくすることができる。
あとで読み返してみる。
以下の記事がとても参考になった。
凄腕エンジニアさんから学んだ例外の話 #error - Qiita
AI時代になっても人間のやりがいが大事。
確かに、AIの生成物をただチェックするだけではつまらないか。いや、生成物の内容をちゃんと理解できれば、それになりに楽しいかもしれないが、それでは多くのソフトウェアエンジニアが不要になるか。。
SAML は SSO を実現するための仕組みなので、例えば、ユーザ(ブラウザ)が idP を経由して SP1 にログインしたら、SP2 にはログインなしでアクセスできる。
ネット上では、SP1 のログインまでの説明はたくさんあるのだが、その後の SP2 へのログインの説明があまりなく、どうやって SP2 へのログインを実現しているのか分からなかったが、幾つかのサイトを見たところ、たぶん以下だと推測している。
idP を通じで SP1 にログインすると、ブラウザの cookie にログイン情報 (セッション情報) が保存される。その後、ブラウザから SP2 にログインする際は、cookie に保存されているログイン情報を使うことで再ログインは必要ないのだろう。(idP と SP1 および SP2 は事前に連携設定をしていて、SP1 へのログイン情報は SP2 でも使用できる前提)
SAML では cookie は使用しない認識だったが、以下のサイト様によると使うらしい。
https://zenn.dev/ksrnnb/articles/36ba8dcc4f4c64
また、以下のサイト様でも、SAML 認証失敗の原因として cookie の有効期限切れを挙げており、やはり上述の理解であっていると思われる。
https://support.ta.kingoftime.jp/hc/ja/articles/11210087289113
もしかしたら、この辺は idP や SP 依存だったりするのだろうか?
ログイン情報を idP 上に保存して、SP1 へのログインの後に SP2 にログインする際、idP から 「ログイン済みだよ~」という情報をもらって、ログインを飛ばすとかあるのかな?しかし、この場合でも idP 側でユーザ(ブラウザ)の識別が必要なので、結局 cookie が必要になるような。。
となると、やはり、ブラウザの cookie にログイン情報を保存しているのだろうか。
2024/2/6 追記
SAMLではなくOIDCについてだが、以下のサイト様で分かりやすく説明されている。おそらくSAMLも同じだろう。
https://qiita.com/yuichi-nakamura/items/0707654d1b17761cb0eb