ritouのブックマーク (85)

  • マルチテナントなサービスにおける認証と権限管理 - KAYAC Engineers' Blog

    こんにちは!技術部の小池です。 この記事は Tech Kayac Advent Calendar 15日目の記事です。気付いたらもう12月も半分じゃないですか…もう今年の営業は終わりにしてお酒飲んで年越しを迎えたい気分ですね〜。 今回はマルチテナントなサービスにおける認証と権限管理についてのお話です。 要件 今回お話するサービスはカヤックグループ全体に提供する予定のマルチテナントのサービスです。カヤックの文化を支える 360度フィードバック、スマイル給 などの複数のサービスが協調して動作するというサービス指向的なアーキテクチャで、既存のカヤック社内サービス群のリニューアルプロジェクトでもあります。 カヤックグループ向けに提供するサービスなので、認証をしないことには利用することはできません。また、カヤックの社員が他のグループ会社の情報を見れてしまうというのも困ったことになってしまうので、組織

    マルチテナントなサービスにおける認証と権限管理 - KAYAC Engineers' Blog
    ritou
    ritou 2019/12/15
    OIDCのIDTokenはあくまで認証イベントの表現、アサーションであり、IdP側のセッション状態を伝えるためのものではない。 FirebaseなどのIDTokenは同じ名称でもセッショントークンを意味するので、これらを同等に扱うのは危険。
  • シングルサインオンのひとことで片付けない - TMD45'β'LOG!!!

    この記事は 認証認可技術 Advent Calendar 2019 の 9 日目の記事です。 前日は Munchkin さんの『認可機構によるアクセス制御とビジネスロジックによるアクセス制御の使い分け』でした。 kishisuke さんの『Sign in with Apple+Cordovaについて』でした。 id:tmd45です、ごきげんよう。 仕事では主に認可の RP 側として toC な認可 IdP(LINE, Google, Yahoo! JAPAN, Facebook, Twitter, など)に接しています、よろしくお願いします。 § 認証認可界隈でお仕事していると、社内からもお客様からも「シングルサインオン」(Single Sign-On, 略称 SSO)という便利機能について話題に上がることがあります。 ただこの「シングルサインオン」という単語の定義がちょっとあいまいで、開

    シングルサインオンのひとことで片付けない - TMD45'β'LOG!!!
    ritou
    ritou 2019/12/09
    SSOは「API連携」が広まる前によく使われていた印象がある。単にSNSでログインできるだけではなく、ログイン状態の同期や、ログアウト時の全体の挙動などまで考えると顧客の要件とIDaaSの価値が認識されていくと思う。
  • JWT はユーザに渡すな - kawasin73のブログ

    JWT とかいてジョットと詠む。どうも、かわしんです。タイトルは釣りです。 この記事は、JWT はログアウトが大変 という内容です。以下で挙げるデメリットを許容できるなら JWT をユーザに渡してもいいと思います。 ログアウトとは、管理者による強制ログアウトや、ユーザのパスワードの変更による全トークンの無効化をさします。ログアウトによって全てまたは一部のトークンが無効化されるユースケースです。 JWT におけるログアウト JWT はログアウトが大変です。なんかいい方法がないものかと調べていましたが、以下の記事に落ち着きました。 javascript - Invalidating JSON Web Tokens - Stack Overflow この記事の結論としては、いい方法などない というものです。残念でした。 JWT をログアウトに対応させる方法は ブラックリストを用意する か トーク

    JWT はユーザに渡すな - kawasin73のブログ
    ritou
    ritou 2019/12/09
    自分の最近の記事の反応もそうなんだけど、JWT推し=ステートレス推しに捕えられてしまうがそれだけじゃないのでは。セッションID方式とJWTの併用してからの価値も追求して行きたいんだけどなかなか伝わらない。
  • 怖くないネイティブアプリケーションにおけるID連携機能を実装するための考え方 - r-weblife

    おはようございます、ritou です。 qiita.com 3日目です。やっていきましょう。 ネイティブアプリのID連携 「今年の汚れ今年のうちに」なんていうフレーズがあります。 記憶が確かではないですが、たしか 7 月ぐらいにどこかの決済サービスによりネイティブアプリのID連携に注目が集まったことがありました。 バックエンドサーバーがあるネイティブアプリでID連携(ソーシャルログイン)の機能を実装してた ネイティブアプリからバックエンドサーバーに Identity Provider の識別子、ユーザー識別子の組み合わせを送ることで認証状態にしてた 推測したり総当たりなどで...可能性があった というお話でした。 この記事では "各Identity Providerが提供している SDK などを使ったり使わなかったりしながら安全に認証機能を実現するための方法" を整理します。 Webアプリ

    怖くないネイティブアプリケーションにおけるID連携機能を実装するための考え方 - r-weblife
    ritou
    ritou 2019/12/03
    ネイティブアプリからバックエンドサーバーに送るのがID Token か Authorization Code なら nonce を使ってセキュアに実装できます。というお話です。
  • OAuth 2.0/OpenID Connectで使われるBindingの仕組みについて整理する - r-weblife

    おはようございます、OAuth警察を装っている ritou です。 qiita.com 認証認可技術 Advent Calendar 2019 2日目の記事です。 今日もやっていきましょう。 (2020/3/9追記)投稿の内容をさらにわかりやすく整理されたを @authyasan さんが書かれています。 #技術書典 応援祭の新刊をBOOTHで公開! OAuth・OIDCへの攻撃と対策を整理して理解できる(リダイレクトへの攻撃編 https://t.co/OtNRNQGmOJ 以下について学びたい方はぜひお読みください state nonce PKCE c_hash at_hash CSRF リプレイ攻撃 認可コード横取り攻撃 トークン・コードインジェクション— Auth屋@技術書典応援祭を応援!OAuthへの攻撃執筆中 (@authyasan) 2020年3月7日 私もレビューをさ

    OAuth 2.0/OpenID Connectで使われるBindingの仕組みについて整理する - r-weblife
    ritou
    ritou 2019/12/02
    簡単にお伝えしようと思ってもなかなか難しいですな
  • 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
    ritou
    ritou 2019/12/01
    Typoも直しました!
  • iddance2_ritou.pdf

    #iddance Lesson 2. Digital Identityの秋の発表資料です。 https://idance.connpass.com/event/146664/

    iddance2_ritou.pdf
    ritou
    ritou 2019/11/11
    C向けサービスの新規登録についての基本設計、APIとして実装するときに考えることを整理して話しました。
  • webauthn_study_ritou.pdf

    2019/10/28 開催の #webauthn_study の発表資料です。 https://web-study.connpass.com/event/149833/

    webauthn_study_ritou.pdf
    ritou
    ritou 2019/11/11
    WebAuthn導入例と、主にリカバリー周りで考えないといけないことについて整理して話しました。
  • WebAuthn/FIDOのUX徹底解説 ~実サービスへの導入イメージを添えて~ / builderscon tokyo 2019 ritou

    下記カンファレンスでの発表資料です。 https://builderscon.io/builderscon/tokyo/2019/session/c9da9bfb-c97c-4f93-a496-ff83b3ca61bc

    WebAuthn/FIDOのUX徹底解説 ~実サービスへの導入イメージを添えて~ / builderscon tokyo 2019 ritou
    ritou
    ritou 2019/08/30
    聞いていただいた皆様、ありがとうございました!
  • ブロックチェーン時代の認証 / Authentication in the Blockchain Era

    2019-08-30 builderscon https://builderscon.io/builderscon/tokyo/2019/session/c68ed2e4-f3ef-46ad-908a-9e8b3e5dcb9b

    ブロックチェーン時代の認証 / Authentication in the Blockchain Era
    ritou
    ritou 2019/08/30
  • 「手元のデバイスで認証認可」を実現するイマドキのOAuth/OpenID Connect仕様 - builderscon tokyo 2019

    Abstract 概要 Webアプリケーションからモバイルアプリケーションへのシフトの後、さらに様々なデバイスでユーザーに紐付くコンテンツが扱われるようになりました。 それに伴い「手元のデバイス」を用いたサービス利用の仕組みを目にします。 スマートフォンでサービスの利用登録、認証 スマートフォンで決済 これらを実現するためにはいくつかの技術の組み合わせが必要です。 QRコード、NFC、BLEなどサービスを提供するデバイスと、ユーザーが扱うデバイスの間で通信を行う技術 FIDOのようなデバイスを用いた安全な認証技術 ユーザーの同意ベースでサービスを提供するためのプラットフォーム技術 サービスの特徴に合わせたそれぞれの技術選定と全体設計を1から行うのは骨が折れる作業でしょう。 Webアプリケーションやネイティブアプリケーションとサービスの認証認可の仕組みにおいて広く使われるようになったOAut

    「手元のデバイスで認証認可」を実現するイマドキのOAuth/OpenID Connect仕様 - builderscon tokyo 2019
    ritou
    ritou 2019/06/11
    デモもやるおつもりなので話したい!
  • WebAuthn/FIDOのUX徹底解説 ~実サービスへの導入イメージを添えて~ - builderscon tokyo 2019

    Abstract 2019年3月にWebAuthnはW3Cの正式な勧告となり、「安全」「パスワードレス」「生体認証」というキーワードとともに期待が高まっています。 昨年のbuildersconでは、注目を集め始めたWebAuthnとFIDOをきっかけとして「みんなでパスワードレスな世界を迎えるためにできることを確認しよう」というお話をしました。 その後、じわじわとWebブラウザやOSの対応が進む中、WebアプリケーションでWebAuthnを利用するためのライブラリの開発も各言語で進められています。 環境面では、2019年2月にAndroid、そして5月にはWindows HelloがFIDO2の認証を取得したことが発表されました。 これは自らセキュリティキーを購入するような新しい技術に敏感な開発者、ユーザーのみがFIDOを体験できる環境から、いわゆる一般的なユーザーもFIDOを利用できる環

    WebAuthn/FIDOのUX徹底解説 ~実サービスへの導入イメージを添えて~ - builderscon tokyo 2019
    ritou
    ritou 2019/05/23
    今年も話したいっすね -> 採択されました!!!
  • 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
    ritou
    ritou 2019/04/21
    SPAでOAuthの処理を全部やっちゃうのが良いかという話とはまた別なのでご注意ください。
  • YConnectで簡単ID連携!その2 ~登録情報の取得~

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、ID厨のくら(@kura_lab)です。 前回の「YConnectで簡単ID連携!その1 ~ログインボタンの設置~」でログイン機能を実装しました。今回は引き続き「YConnect PHP SDK」をつかって、ユーザーの登録情報を取得する方法について解説したいと思います。 「UserInfo API」を利用して、ウェブサイトの新規アカウント登録時のフォームにYahoo! JAPANに登録されている情報をプリセットしましょう。 目的:Yahoo! JAPANを利用ユーザーの登録情報取得の実装 対象:PHP基礎レベル以上 所要時間:およそ15分 環境:Apache + PHP 5.2.x 以降(curl、json関連パッケー

    YConnectで簡単ID連携!その2 ~登録情報の取得~
    ritou
    ritou 2013/03/07
    なるほど!これ一昨日に見たかったですね!
  • にひりずむ::しんぷる - JSON::WebToken released

    JSON-WebToken - JSON Web Token (JWT) implementation - metacpan.org 作ってからだいぶ放置してましたが、そろそろ需要がありそうなのでとり急ぎリリースしておきました。 今のところ、JWE 関連は未着手です。あと使える Algorithm もだいぶ限られていますが、そのうち実装される予定です。 というか暗号化周りはどのモジュール使えばいいのかわからんし、使い方もわからんしなので、詳しい人いたら教えていただけると幸いです!!

    ritou
    ritou 2013/02/08
    これは注目せざるを得ない!
  • Attribute Provider と替え玉問題 - 知らないけどきっとそう。

    SITFのWGにて技術面で検討したことと今後やっていくこと - r-weblife Identity と Attribute が別々に提供される OAuth を二段に連携させることによって Identity + Attribute が結びついた情報を得られる 二段のうちの片方である、IdP が AtP から ユーザー識別子を取得するフローに注目してみましょう IdP は、ログイン中のアカウントが持つ Identity と、取得した Attribute を結び付けます http://sitf-idp.openidconnect.info/ が http://sitf-ap.openidconnect.info/ から取得する Attribute の例 ユーザー識別子 : 22 組織名称(英字) : Bakada University 組織内所属(英字) : Philosophy 組織名称(日

    Attribute Provider と替え玉問題 - 知らないけどきっとそう。
    ritou
    ritou 2012/06/10
    大先輩からの指摘を受け、とりあえずSITF IDPで識別子のチェック入れて1人としか紐づかなくした。残り(RP)は後でやる。
  • そろそろヤフーのログイン履歴騒ぎについてひとこと言っておくか - 知らないけどきっとそう。

    こんばんは、asannouです。 この記事を読まれた方はいるでしょうか。 http://journal.mycom.co.jp/news/2011/05/19/098/index.html 不正ログインが急増したといわれ、漏えいしている疑惑まで出てきたヤフーからの公式コメントを解説する説明のようです。 (っていうか地震情報が消えるまでスクリーンショット待てなかったんでしょうか) これって、Facebookの友達検索ツールが原因のひとつだったみたいです。 ↓ amazonaws.comからYahoo! JAPANへの不正ログイン?それって・・・ - r-weblife 結局何が問題なのか この件で、悪いのは誰だったのでしょうか? Yahoo!メールから、自分の知り合いのメールアドレスを取り出そうとした、わがままなユーザー Yahoo!メールから、ユーザーの知り合いのメールアドレスをWeb S

    そろそろヤフーのログイン履歴騒ぎについてひとこと言っておくか - 知らないけどきっとそう。
    ritou
    ritou 2011/05/30
    こんばんはから始まり、ではまた!で終わる、実にいい言い回し
  • ヤフー、Yahoo! JAPAN IDの漏えい/不正アクセスの事実を否定 | ネット | マイコミジャーナル

    ヤフーは5月19日、一部で「Yahoo! JAPAN IDに対して不正なログインが発生しているのではないか」といった報道が行われていることに対し、登録情報の漏えいや不正アクセスの事実を否定する公式コメントを発表した。 Yahoo! JAPAN IDは、同一IDを外部のWebサービスでも利用できる「OpenID」に準拠している。Yahoo! JAPANではログインの履歴を確認できる「ログイン履歴」ページが用意されているが、この画面には、外部のサーバを経由してYahoo! JAPANの認証機能へアクセスを行ったものの履歴も表示される。 「ログイン履歴」画面 今回の報道は、このような外部サービスが利用しているサーバ(海外にあるケースも)からのアクセスが「不審なアクセス」と勘違いされてネット上で騒ぎが広がった可能性があるが、同社は「Yahoo! JAPANの登録情報の漏えいや、それによる不正アクセ

    ritou
    ritou 2011/05/20
    え?ユーザーがY!上でログインしてるOpenIDとかOAuthって今回関係ないのでは?
  • ヤフーにおけるインプットバリデーション「何も信じるな」 (Yahoo! JAPAN Tech Blog)

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、R&D統括部 開発推進室 セキュリティプラットフォーム技術 セキュリティスペシャリストの戸田 薫です。 今回は、私たちが普段からヤフーのシステムに対する入力にどのような注意を払っているのか、そのいくつかをご紹介致します。 入力とは? Webサイトを運営している場合、どのような入力があるでしょうか? たとえば、Webサービスには、以下の入力があります。 Cookie URL GET/POSTのデータ ファイルのアップロード その他リクエストヘッダ そのほかにもいくつもあります。 環境変数 設定ファイル クローラが取得したデータ パートナー企業のAPIから取得したデータ(XMLやJSONなど) パートナー企業の入稿用 F

    ヤフーにおけるインプットバリデーション「何も信じるな」 (Yahoo! JAPAN Tech Blog)
    ritou
    ritou 2011/03/23
    セキュリティと書くといろいろ言われるのだろうけども、とりあえず、どんな言語でもこれらのバリデーション処理が簡単にできちゃう道具がY!には揃っているということは確かである。
  • Cookieのexpireの扱いがブラウザによってちょっと異なる件 - mikanmarusanのブログ

    弊社のアプリが動かないという残念な問い合わせがいくつかあったので、1日ばかりずっと悶々と調べてみたりした。結局Cookieの挙動によるものだったんだけど、Cookieの有効期限の挙動がブラウザごとに違っているらしく、ちょっとハマッたので備忘録としてまとめてみた。 Cookieの仕様のおさらい Cookieは、HTTP State Management Mechanism(HTTP 状態管理メカニズム)というタイトルで、RFC2965で定義されているみたいだが、各種ブラウザの実装は、Cookieを導入したNetscape Navigatorの実装に基づいているようだ。 ここでは、Cookieの仕様についての説明は割愛するが、超簡単にまとめると以下の通り。 サーバ クライアントに保持してもらいたい状態情報を、HTTPレスポンスのSet-Cookieヘッダに乗せて送出する Set-Cookie:

    Cookieのexpireの扱いがブラウザによってちょっと異なる件 - mikanmarusanのブログ
    ritou
    ritou 2011/02/01
    Cookieは奥が深い