タグ

ブックマーク / ritou.hatenablog.com (18)

  • 共有端末におけるパスキー利用可否の解像度を上げる - r-weblife

    ritouです。 Xを日々パトロールをしていると、共有/共用端末(これ正式な用語としてはどっちなん?以下、共有と呼びます。)でのパスキー利用について思いを馳せる人が目につくようになりました。 だいたいの人は 共有端末ではパスキーは使えない!完 という認識でしょうけれども、実際どうなんでしょうか? 今回はもうちょっと解像度を上げるための細かい話をしましょう。 共有する範囲 まずは 共有端末と言っても、実は細かく色々あるんじゃないの? というところです。 サービスを利用するにあたって、ユーザーが専有できる範囲はどこなのか、複数ユーザーと共有する範囲はどこなのかというところがいくつかあるでしょう。 (A) 端末ごとにユーザーが異なる: 個人PCやモバイル端末を利用 (B) 端末のプロファイル(ログインユーザー)が異なる: 会社のPCに社員がログインして利用 (C) 端末のプロファイルは一緒、ブラ

    共有端末におけるパスキー利用可否の解像度を上げる - r-weblife
    tkawa
    tkawa 2023/11/19
  • PWA Night vol.57 ~認証・認可〜 にてパスキーの話をしました - r-weblife

    ritou です。 これで話しました。 pwanight.connpass.com 発表資料と発表内容を公開します。 発表資料 speakerdeck.com 発表内容 台チラ見しながら話したので実際にはこのとおりになってなかった部分もあります。 今日は、パスキーについて話します。 細かい自己紹介は省略します。 色々宣伝したいものがありますがブログに書きます。 今日の内容ですが、初めにパスキーの概要についてざっと触れます。 続いてWebアプリケーションにパスキーを導入するとなった場合にどこから手をつけるべきかというところに触れた後、一番の悩みどころになりそうなログインのUI/UXについて紹介します。 概要からいきましょう。 パスキーの紹介記事もたくさん出ているので要点だけまとめます。 パスキーとは「パスワードが不要な認証方式」であり、それを支える仕様はFIDOアライアンスとW3Cにより策

    PWA Night vol.57 ~認証・認可〜 にてパスキーの話をしました - r-weblife
    tkawa
    tkawa 2023/11/16
  • β公開された1Passwordのパスキー対応について調べてみた - r-weblife

    こんにちは、ritouです。 β公開から少し時間が経ってしまいましたが、1Passwordのパスキー対応について確認して整理しました。 www.publickey1.jp これまでAppleiCloud KeychainやAndroidGoogleパスワードマネージャーなどが プロバイダとしてのパスキーのサポートをしてきた中で、1Passwordが同様の対応をすることでクロスプラットフォームなパスキー利用環境が整うのか?と注目が集まっています。 個人的に1Passwordを活用しているので、使い勝手を見てみました。 環境は Chrome バージョン: 114.0.5735.133 @ macOS です。 1Passwordのβ版の拡張機能を有効にすることで動作確認ができます。 Relying Partyにはwebauthn.ioを利用します。 webauthn.io パスキーの生成/登

    β公開された1Passwordのパスキー対応について調べてみた - r-weblife
    tkawa
    tkawa 2023/06/20
  • 「使える人にだけ使わせる」 ~ マネーフォワード IDのログインUXから見るパスキー普及のポイント - r-weblife

    ritouです。 いよいよドコモさんもパスキー対応が始まりましたね!いや、これを書いている時点ではまだです。 k-tai.watch.impress.co.jp それよりも、今回はマネーフォワード IDのパスキー対応に注目します。 corp.moneyforward.com (4/5追記) マネーフォワード側からも解説記事が出ていました。この記事で言いたいことが全部書いてあります。 moneyforward-dev.jp ブラウザのパスワードマネージャー機能を利用したパスワード認証のUX パスキー対応に触れる前に、マネーフォワードIDのパスワード認証のUXから見ていきましょう。 マネーフォワードの「メールアドレスでログイン」のフローを何も考えずに使うと、最初にメールアドレスを入れてからパスワード入力を求めるUXになっています。 このようなUXでブラウザのパスワードマネージャーの機能を使う場

    「使える人にだけ使わせる」 ~ マネーフォワード IDのログインUXから見るパスキー普及のポイント - r-weblife
    tkawa
    tkawa 2023/04/04
  • idcon29のY!Jの事例からログインフローにおけるWebAuthn対応の課題を考えた - r-weblife

    ritouです。 idcon の Yahoo! JAPAN の人の資料と動画を見たメモです。 www.docswell.com youtu.be 2画面のログインUX p5 2画面か一回でやるかの話は、個人的にこだわっているスキャンの話もありますね。 Y!JはFederation(RP側)をやっていませんが、マネフォのようにパスワード認証/FederationがあるところにWebAuthnを追加する場合にどうすべきか、みたいなのは別途どこかで整理したい気がしています。 推測 Platform Authenticator だけはなく YubikeyとかのRoaming Authenticatorに対応してる場合、リセットした場合も同じことが起こりそう。 そもそもFIDOはブラウザ - 認証器と多段の処理になっているのでブラウザレイヤーでの完全なコントロールってのも難しそう。 例えば、Andr

    idcon29のY!Jの事例からログインフローにおけるWebAuthn対応の課題を考えた - r-weblife
    tkawa
    tkawa 2022/10/17
  • フィッシング対策観点でメールでリンクが送られない世界を目指すために我々は何ができるか - r-weblife

    ritou です 急に寒くなりましたね。 この記事は何の話か 最近のメール経由のフィッシングの話で、 その辺のユーザーにとって、メールの送信元が正規のものかどうかの確認は容易ではない さらに、メール文に含まれるURLの確認が容易ではない という現状があります。 前者がうまいこと解決されると一番良いんでしょうけれども、そうもいかないのでしょう? 後者のところでよく「メールに含まれる怪しいリンクをクリックしないでください」と言うのがあります。 そもそも怪しいかどうかがわからないからクリックするわけなので、「怪しい」部分を説明するのも大事なことですが、細けーことは一般ピーポーには無理なので、「メールに含まれるリンクをクリックしないでください」まで振り切る方がいい気がしてます。 しかし、これはこれで サービスはユーザーとのコミュニケーションツールとしてリンクを送る(クリックして欲しい) ユーザー

    フィッシング対策観点でメールでリンクが送られない世界を目指すために我々は何ができるか - r-weblife
    tkawa
    tkawa 2022/10/10
  • Chrome 93で実装されたCross Device WebOTPフローを試してみた - r-weblife

    おはようございます ritou です。 8月ですよ。お仕事の進捗大丈夫ですか? 最近、Google方面からDecoupled AuthNの香りがしたので追ってみました。 何の話? この話です。 developer.chrome.com WebOTPとは? Webアプリケーションがモバイル端末でSMS経由のOTP認証をしようと思った時、画面に「認証コードを送信しました」なんて出た後にSMSを確認できるアプリを起動して確認してまたブラウザに...とかをやったことがある人は多いでしょう。 WebOTPとは、モバイル端末上のブラウザであればアプリの切り替えをせずにワンタップでSMSで受け取ったOTPの値を読み込んで検証リクエストに繋げられる、しかもSMSを発信したWebアプリを特定できるフォーマットになっていることでフィッシングサイトからはこのフローを使えなくするような仕組みのことです。 web.

    Chrome 93で実装されたCross Device WebOTPフローを試してみた - r-weblife
    tkawa
    tkawa 2021/08/03
    Chromeの内部チャネルを使うのであればSMS使わずにOTPもそこを通せばいいんじゃないかと思うのだけど、既存の実装に寄せたってところか
  • 認証機能を独自実装する代わりにIDaaSのREST APIを使うアプローチ - r-weblife

    こんにちは、ritou です。 最近のあれこれでIDaaSと呼ばれる機能に注目が集まっているような気がしますが、どうしてもフロントエンドでの導入部分が目に付きます。 「新規サービスで使っていこう」ならまだしも「既存のを何とかしたい」みたいな場合にフロントエンドまでごっそり変えるのなんて腰が重くなって仕方ない感じでしょう。 そこで今回は、REST APIを用いた新規導入、移行というアプローチもあるのかなという話を書いておきます。 SPAとなると当然フロントエンドの振る舞いに注目されるけど、Deviseからの...を考える人たちはこの辺りから攻めるのもアリかと思う。ちゃんと整理して考えよう。https://t.co/fwhoA6wtjx— 👹秋田の🐱 (@ritou) 2020年8月19日 IDaaS の REST API この辺りをみてみてはどうでしょう。 Firebase Authe

    認証機能を独自実装する代わりにIDaaSのREST APIを使うアプローチ - r-weblife
    tkawa
    tkawa 2020/08/19
  • 「ID TokenをAuthorization Headerにつけて送る」というお作法について思うところ - r-weblife

    こんばんは、ritouです。 ID Tokenがやりとりされている背景 ちょっと前にこんな話がありました。 blog.ssrf.in この id_token が JWT になっていますので、これを Authorization: Bearer $ID_TOKEN というヘッダにして oauth2-proxy で保護されているアプリケーションへ送信するだけです。 docs.aws.amazon.com Authorization ヘッダー (または、オーソライザー作成時に指定した別のヘッダー) に ID トークンを含めます。 この「ID TokenをAuthorization Headerに指定して保護されているっぽいリソースにアクセスする行為」は一体何なのかというお話です。 ある有識者はOAuth 2.0のProtected ResourceをID Tokenで保護することについての投稿をし

    「ID TokenをAuthorization Headerにつけて送る」というお作法について思うところ - r-weblife
    tkawa
    tkawa 2020/05/18
    「どんなユースケースであれ、ID TokenじゃなくAccess Tokenでやれ」
  • JWT+RDBを用いたOAuth 2.0 ハイブリッド型トークンの実装例 - r-weblife

    おはようございます、ritouです。 (⚠️認可イベントの識別子のあたり、ちょっと見直しました!最初に見ていただいた方はもう一回どうぞ!) 前回、ハイブリッド型と呼ばれる OAuth 2.0 のトークン実装について書きました。 ritou.hatenablog.com その続きとして JWT(JWS) + RDBでできる実装例を紹介します。 理解するにはそれなりの OAuth 2.0 に関する知識が必要になるかもしれませんが、よかったら参考にしてみてください。 何を考えたのか OAuth 2.0のRefresh Token, Access Tokenを考えます。 要件から整理しましょう。 要件 結構ありますが、最低限の OAuth 2.0 の Authorization Server を実装しようと思ったらこれぐらいはやらないといけないでしょう。 RFC6750 で定義されている Bear

    JWT+RDBを用いたOAuth 2.0 ハイブリッド型トークンの実装例 - r-weblife
    tkawa
    tkawa 2020/05/07
  • OAuth 2.0/OIDCに入門した開発者が仕様沼に潜るための次のステップとは? - r-weblife

    お疲れ様です、ritou です。 OAuth 2.0やOIDCの入門書(?)を読み終えた開発者の方に、仕様を理解していくための次のステップは何があるかを聞かれました。 そもそもそんなこと言う人は クライアントを実装したい(しなければならない) 認可サーバーを実装したい(しなければならない) セキュリティエンジニアを名乗っていてこの分野を抑えときたい ただ単純に興味がある : そんな人いる? とかそんな感じな気はしますが、基的なフローを乗り越えた先に広がる仕様沼への潜り方に戸惑っておられるようでした。 そこで、いわゆる RFC6749/6750/7636 あたりを完全に理解した開発者が山ほどある仕様にどう立ち向かっていくかを考えます。 仕様にも色々ある IETF の OAuth関連の仕様、いっぱいあります。密です。密です。みみみみみみみみ... tools.ietf.org 去年に一回まと

    OAuth 2.0/OIDCに入門した開発者が仕様沼に潜るための次のステップとは? - r-weblife
    tkawa
    tkawa 2020/04/30
  • JSON Web Signatureを簡単かつ安全に使うためのkid/typパラメータの使い方 - r-weblife

    こんにちはこんにちは、ritou です。 現状、様々な用途で利用されているJWTですが、今後はますます開発者にとって "簡単に" かつ "安全に" 利用できる状況が求められていくと考えられます。 今回はそのために重要になる、各種パラメータの扱いに注目します。 とりあえずライブラリ使えで終わりでは? JWTを扱うためには 各種暗号化処理 JSON, Base64URLエンコード/デコード あたりの処理が必要です。 関連仕様がRFC化されてからある程度時間も経っており、各言語で仕様を忠実に実装されたものから自身が使う機能をピンポイントで抽出して実装したものまで様々なライブラリが存在します。 ここで、 仕様に忠実に、全ての暗号化処理をサポートするライブラリ を使うだけで、誰もが安心、安全に利用できるかと言うと、そうでもないことは想像できるでしょう。 JWTの各種仕様とは別で最近RFC化された "

    JSON Web Signatureを簡単かつ安全に使うためのkid/typパラメータの使い方 - r-weblife
    tkawa
    tkawa 2020/04/01
  • OAuth 2.0 / OpenID Connectにおけるstate, nonce, PKCEの限界を意識する - r-weblife

    おはようございます、ritouです。ちなみに予約投稿なのでまだ寝てます。 日のテーマはこちらです。 OAuth/OIDCのstate,nonce,PKCE使ってもClient/RPがしょーもなかった場合のServer/OP側の限界についてのブログ書いてる。— 👹秋田の🐱 (@ritou) July 6, 2019 OAuth 2.0で言うところのClientの視点から、ここに気をつけて実装しましょうという話ではありません。 OAuth 2.0で言うところのServerの視点からみて、Clientにこんな実装されたらたまんねぇなっていうお話です。 最終的には一緒な気もしますが、とりあえず始めます。 state OAuth DanceにおけるCSRF対策としての state パラメータについて簡単に整理します。 Clientがセッションに一意に紐づく値として生成、管理 ClientがA

    OAuth 2.0 / OpenID Connectにおけるstate, nonce, PKCEの限界を意識する - r-weblife
    tkawa
    tkawa 2020/01/28
  • Webアプリケーションのセッション管理にJWT導入を検討する際の考え方 - r-weblife

    おはようございます、ritou です。 qiita.com これの初日です。 なんの話か 皆さんは今まで、こんな記事を目にしたことがありませんか? Cookie vs JWT 認証に JWT を利用するのってどうなの? JWT をセッション管理に使うべきではない! リンク貼るのは省略しますが、年に何度か見かける記事です。 個人的にこの話題の原点は最近 IDaaS(Identity as a Service) として注目を集めている Auth0Cookie vs Token とか言う比較記事を書いたことだと思っていますが、今探したところ記事は削除されたのか最近の記事にリダイレクトされてるようなのでもうよくわからん。 なのでそれはおいといて、この話題を扱う記事は クライアントでのセッション管理 : HTTP Cookie vs WebStorage(LocalStorage / Sess

    Webアプリケーションのセッション管理にJWT導入を検討する際の考え方 - r-weblife
    tkawa
    tkawa 2019/12/01
  • ファーストパーティーなアプリが使うOAuth/OIDCについてのお話 2019 春 - r-weblife

    夜分遅くに失礼いたします。ritouです。 こういう記事を読むとうずうずします。おそらく病気です。 terut.hatenablog.com 森羅万象を担当しているわけではないので、OAuth/OIDCが使えんのか?って観点から書いておきます。 ファーストパーティーのOAuth/OIDC利用 単一サービス内でOAuth/OIDC使うことってあるのか?という問いには「条件によっては適用可能」といったふわっとした答えになりそうです。フワッ Webアプリ Webアプリでも例えばドメインいっぱいある、別れている系でOAuth/OIDCでつなぐケースはありそうですね。 Microsoft : https://www.office.com/ -> https://login.microsoftonline.com/common/oauth2/authorize?client_id=... OAuth

    ファーストパーティーなアプリが使うOAuth/OIDCについてのお話 2019 春 - r-weblife
    tkawa
    tkawa 2019/08/08
  • SPAなClientがトークンを安全に扱えるかもしれない拡張仕様「OAuth2.0 DPoP」とは - r-weblife

    おはようございます、ritou です。 今日は日頃の情報収集方法の一つである Mike Jones氏のブログ記事に書いてあったドラフト仕様のご紹介です。 self-issued.info The specification is still an early draft and undergoing active development, but I believe the approach shows a lot of promise and is likely to be adopted by the OAuth working group soon. まだDraft中のDraftな状態ですが、まいくたんの推し感が出ているのでざっと見ておきましょう。 OAuth2.0 DPoPとは? tools.ietf.org This document describes a mechanism

    SPAなClientがトークンを安全に扱えるかもしれない拡張仕様「OAuth2.0 DPoP」とは - r-weblife
    tkawa
    tkawa 2019/04/20
  • OAuth 2.0 の Implicit grant 終了のお知らせ - r-weblife

    おはようございます。 月曜です。 ritouです。 先週、こんな記事出てました。 Why you should stop using the OAuth implicit grant! もう Implicit grant 使ってくれるなよ 仕様策定中の OAuth 2.0 Security Best Current Practice(今はDraft9) で使用しないことを推奨している バンコクで開かれた今週のIETF meetingで決定された ということらしいです。 Implicit grantといえば Token Replace Attack や Covert Redirect など、OAuth 2.0の脆弱性を語る上で欠かせない唯一無二の存在であります。 www.atmarkit.co.jp 私の中では最初から非推奨ですが、公式にとなると気になりますね。 策定中のドキュメントではどう

    OAuth 2.0 の Implicit grant 終了のお知らせ - r-weblife
    tkawa
    tkawa 2018/11/12
  • OpenID Connect のあれが WebAuthn のこれになったらどうなるかって話 - r-weblife

    おはようございます。ritou です。 builderscon tokyo 2018 にて WebAuthn のさわりの話をした時に、「OAuth / OpenID Connect」 との関係について質問がありました。 この質問に限った話ではありませんが、"認証のための技術" なんていうと、認証方式、認証状態のセッション管理、ID連携まで広範囲に渡るため、話が混乱してしまうものです。 ここでは OIDC で言うところの誰が WebAuthn で言う所の誰になるとどうなるのか、みたいな話を書きます。 前提 FIDO と Identity な標準化技術は "補完関係" 結構前ですが、もっと詳しい方が書いたものを紹介します。 https://www.jstage.jst.go.jp/article/itej/70/5/70_481/_pdf 上記FIDOの技術仕様は、認証の領域にのみ注力していま

    OpenID Connect のあれが WebAuthn のこれになったらどうなるかって話 - r-weblife
    tkawa
    tkawa 2018/09/30
  • 1