タグ

OAuthに関するikosinのブックマーク (22)

  • [前編] IDトークンが分かれば OpenID Connect が分かる - Qiita

    はじめに 「解説記事を幾つも読んだけど OpenID Connect を理解できた気がしない」― この文書は、そういう悩みを抱えたエンジニアの方々に向けた OpenID Connect 解説文書です。概念的・抽象的な話を避け、具体例を用いて OpenID Connect を解説していこうと思います。 この文書では、JWS (RFC 7515)、JWE (RFC 7516)、JWK (RFC 7517)、JWT (RFC 7519)、ID トークンの説明をおこないます。 追記(2020-03-20) この記事の内容を含む、筆者人による『OAuth & OIDC 入門編』解説動画を公開しました! 1. 『ID トークン』を発行するための仕様 一般の方々に対しては「OpenID Connect は認証の仕様である」という説明で良いと思います。一方、技術的な理解を渇望しているエンジニアの方々に対

    [前編] IDトークンが分かれば OpenID Connect が分かる - Qiita
  • Auth.js | Authentication for the Web

    // auth.ts import NextAuth from "next-auth" import GitHub from "next-auth/providers/github" export const { auth, handlers } = NextAuth({ providers: [GitHub] }) // middleware.ts export { auth as middleware } from "@/auth" // app/api/auth/[...nextauth]/route.ts import { handlers } from "@/auth" export const { GET, POST } = handlers // src/auth.ts import { SvelteKitAuth } from "@auth/sveltekit" impor

    Auth.js | Authentication for the Web
  • OAuth、OAuth認証、OpenID Connectの違いを整理して理解できる本 [2024年改訂版] - Auth屋 - BOOTH

    ※ 2024年 OpenID Configurationの章とコラムを2つ追加しました。詳細はP4no改訂履歴を見てください。 ※ 電子版はpdfとepubをダンロードできます。 ステッカーは「OAuth完全に理解した!」ステッカーです。 トップの画像をご確認ください Auth屋のの評判: https://togetter.com/li/1477483 雰囲気OAuthシリーズ第2弾!認可のプロトコルであるOAuth2.0と認証の関係を理解するためのです。OpenID Connectの入門書でもあります。 ■ 想定読者 以下のいずれかに当てはまるエンジニアが想定読者です。 • OAuthと認証の関係を理解したい • 「SNSアカウントでログイン」の仕組みを知りたい • OpenID Connectを理解したい ■ このを読むメリット 「OAuth は認可のプロトコルなのになぜ OAu

    OAuth、OAuth認証、OpenID Connectの違いを整理して理解できる本 [2024年改訂版] - Auth屋 - BOOTH
  • OAuth アクセストークンの実装に関する考察 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに この記事では、OAuth 2.0 のアクセストークンの実装に関する考察を行います。記事の執筆者人による動画解説も『OAuth & OIDC 勉強会 【アクセストークン編】』で公開しておりますので、併せてご参照ください。 English version of this article is here → "OAuth Access Token Implementation". 1. アクセストークン実装方法の分類 OAuth のアクセストークン※1の実装方法は認可サーバーの実装依存です。 実装依存ではありますが、RFC 67

    OAuth アクセストークンの実装に関する考察 - Qiita
    ikosin
    ikosin 2021/09/06
  • 一番分かりやすい OAuth の説明 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに 過去三年間、技術者ではない方々に OAuth(オーオース)の説明を繰り返してきました※1,※2。その結果、OAuth をかなり分かりやすく説明することができるようになりました。この記事では、その説明手順をご紹介します。 ※1:Authlete 社の創業者として資金調達のため投資家巡りをしていました(TechCrunch Japan:『APIエコノミー立ち上がりのカギ、OAuth技術のAUTHLETEが500 Startups Japanらから1.4億円を調達』)。Authlete アカウント登録はこちら! ※2:そして2回目の

    一番分かりやすい OAuth の説明 - Qiita
  • OAuth 2.0 全フローの図解と動画 - Qiita

    RFC 6749 (The OAuth 2.0 Authorization Framework) で定義されている 4 つの認可フロー、および、リフレッシュトークンを用いてアクセストークンの再発行を受けるフローの図解及び動画です。動画は YouTube へのリンクとなっています。 English version: Diagrams And Movies Of All The OAuth 2.0 Flows 追記 (2019-07-02) 認可決定エンドポイントからクライアントに認可コードやアクセストークンを渡す方法については、別記事『OAuth 2.0 の認可レスポンスとリダイレクトに関する説明』で解説していますので、ご参照ください。 追記(2020-03-20) この記事の内容を含む、筆者人による『OAuth & OIDC 入門編』解説動画を公開しました! 1. 認可コードフロー RF

    OAuth 2.0 全フローの図解と動画 - Qiita
    ikosin
    ikosin 2021/07/06
  • OAuth認証とは何か?なぜダメなのか - 2020冬 - r-weblife

    こんばんは。ritouです。 Digital Identity技術勉強会 #iddance Advent Calendar 2020 1日めの記事です。 qiita.com 初日なのでゆるふわな話をしましょう。 何の話か もうだいぶ前ですね。9月のお話です。こんなTweetを見かけました。 社内Slackにいる「OAuth認証」と書くと訂正してくれるbotが丁寧な解説をするようになっていた 認証(Authentication)と認可(Authorization)は間違えやすいわりにミスると甚大な被害をもたらしがちなので、常日頃から意識を高めていきたいですね pic.twitter.com/oVQxBgZcHS— greenspa (@greenspa) 2020年9月28日 このbotに対する思うところはもう良いです。 今回は、「OAuthの仕様に沿ってID連携を実装するいわゆる"OAut

    OAuth認証とは何か?なぜダメなのか - 2020冬 - r-weblife
  • GitHub - oauth2-proxy/oauth2-proxy: A reverse proxy that provides authentication with Google, Azure, OpenID Connect and many more identity providers.

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - oauth2-proxy/oauth2-proxy: A reverse proxy that provides authentication with Google, Azure, OpenID Connect and many more identity providers.
    ikosin
    ikosin 2020/08/13
    “This repository was forked from bitly/OAuth2_Proxy on 27/11/2018.”
  • これからはじめるバックエンド技術 〜OAuthとWeb APIの基礎〜

  • OAuth 2.0 + OpenID Connect のフルスクラッチ実装者が知見を語る

    認証は単純な概念で、別の言葉で言えば人確認です。Web サイトにおける人確認の最も一般的な方法は ID とパスワードの組を提示してもらうことですが、指紋や虹彩などの生体情報を用いた人確認方法もありえます。どのような確認方法だとしても (ワンタイムパスワードを使ったり、2-way 認証だったりしても)、認証とは、誰なのかを特定するための処理です。開発者の言葉でこれを表現すると、「認証とは、ユーザーの一意識別子を特定する処理」と言えます。 一方、認可のほうは、「誰が」、「誰に」、「何の権限を」、という三つの要素が出てくるため、複雑になります。加えて、話をややこしくしているのは、この三つの要素のうち、「誰が」を決める処理が「認証処理」であるという点です。すなわち、認可処理にはその一部として認証処理が含まれているため、話がややこしくなっているのです。 認可の三要素をもう少し現場に近い言葉で表

    OAuth 2.0 + OpenID Connect のフルスクラッチ実装者が知見を語る
  • OAuth 認証を真面目に考える | DevelopersIO

    認証とログインは別と捉えることで、その状態の維持に着目してその手法を考えましょう。OAuth 認証は2018年現在、必要悪としか言いようがありません。ぐぬぬ。ソーシャルログインであっても、Web サーバーで自前のセッションを管理してください。 永遠の生魚おじさん、都元です。学生時代、ロックバンド Harem Scarem の Mood Swings (1993年) っていうアルバムが好きでよく聞いてたんですけど、この前 Google Play Music で検索してみたらMood Swings II (2013年) っていうアルバムが出ていることに気づきました。なんと曲目が全て一緒で、妙なアレンジのリミックスになっていない、まさに「オリジナルのまま20年磨き続けたらこうなりました」みたいな仕上がりが最高でした。聴き比べて楽しんでいます。 さて、弊社は日を最終営業日として、これから冬季休業

    OAuth 認証を真面目に考える | DevelopersIO
  • 【第二弾】OAuth 2.0 + OpenID Connect のフルスクラッチ実装者が知見を語る

    はじめに 記事は「OAuth 2.0 + OpenID Connect のフルスクラッチ実装者が知見を語る」の続編となります。保護リソースエンドポイント (protected resource endpoint)、いわゆる世の中でいうところの (狭義の) Web API の実装に関する話題がメインとなります。 1. もう一つの認可 1.1. アカウント属性文脈での認可 混乱を避けるため前記事では敢えて言及しませんでしたが、認可という言葉は別の文脈で使われることがあります。その文脈では、「誰が何の権限を持っているか (who has what permissions)」という情報を扱うために認可という言葉を使います。これは、OAuth の文脈での認可「誰が誰に何の権限を与えるか (who grants what permissions to whom)」とは異なります。厄介なことに、このど

    【第二弾】OAuth 2.0 + OpenID Connect のフルスクラッチ実装者が知見を語る
  • OAuth 2.0 クライアント認証 - Qiita

    サーバーは、受け取ったクライアント証明書の主体識別情報が事前登録されているものと一致することを確認し、もってクライアント認証とします。 このクライアント認証方式には tls_client_auth という名前が与えられています(MTLS, 2.1.1. PKI Method Metadata Value)。 なお、クライアント証明書には OAuth 2.0 の文脈におけるクライアント ID は入っていないので、クライアント証明書だけではクライアントを特定することはできません。そのため、クライアント証明書を用いるクライアント認証をおこなう際は、別途クライアント ID をリクエストに含める必要があります。通常は client_id リクエストパラメーターが使用されます。 1.8. self_signed_tls_client_auth クライアント証明書を用いるクライアント認証において、PKI

    OAuth 2.0 クライアント認証 - Qiita
  • OAuth徹底入門 セキュアな認可システムを適用するための原則と実践 | 翔泳社

    OAuthは近年、WEBアプリケーションで使われる主要な認可プロトコルです。書ではOAuthをどのようなプラットフォームでも適用できるように解説をしています。 書は全体で16章あり、4つのパートに分割しています。パート1にあたる第1章と第2章はOAuth 2.0のプロトコルの概要を説明しており、基盤となる知識を得るための読み物としています。パート2は第3章から第6章までとなっており、OAuth 2.0のエコシステム全体をどのように構築するのかについて示しています。パート3は第7章から第10章までとなっており、OAuth 2.0のエコシステムにおけるさまざまな構成要素が持つ脆弱性について説明しており、その脆弱性をどのように回避するのかについて述べています。最後のパートは第11章から第16章までで構成されており、OAuth 2.0を核とした次の世代のプロトコルについて語っており、標準や仕様

    OAuth徹底入門 セキュアな認可システムを適用するための原則と実践 | 翔泳社
  • OAuth2 offline_accessスコープ対応 - kubell Creator's Note

    こんにちは、かとじゅんです。 今回はOAuth2のスコープに offline_access という新しいスコープが追加されたので以下にお知らせします。ひとことで言うと、チャットワークと連携するBOTを作りやすくするスコープです! 詳しくはこちらを参照ください。 チャットワークAPIドキュメント 用語の定義 まず目的を説明する前に、用語の定義から説明させてください。 offline_accessのoffline(オフライン)とは、リソースオーナー(チャットワークユーザー)が、OAuth2クライアント(以下、クライアント)上で不在の状態のことを指します。逆はオンラインと呼びます。わかりにくければ、オフラインがログアウト状態、オンラインがログイン状態と考えて差し支えありません。つまり、offline_accessとは、リソースオーナーのオフライン時でも、クライアントがチャットワーク APIにアク

    OAuth2 offline_accessスコープ対応 - kubell Creator's Note
    ikosin
    ikosin 2018/08/24
    無くて辛かったやつ来てた
  • Enable OAuth Refresh Tokens in AngularJS App using ASP .NET Web API 2, and Owin - Bit of Technology

    After my previous Token Based Authentication post I’ve received many requests to add OAuth Refresh Tokens to the OAuth Resource Owner Password Credentials flow which I’m currently using in the previous tutorial. To be honest adding support for refresh tokens adds a noticeable level of complexity to your Authorization Server. As well most of the available resources on the net don’t provide the full

    Enable OAuth Refresh Tokens in AngularJS App using ASP .NET Web API 2, and Owin - Bit of Technology
    ikosin
    ikosin 2018/07/11
  • チャットワークのOAuth2のクライアントをPHPで簡単に実装するためのライブラリを紹介 - kubell Creator's Note

    安達です、PHPでチャットワークのサーバーサイドの開発をしています。 ChatWork Advent Calendar 2017の15日目のエントリーは、チャットワークのOAuth2のクライアント開発をPHPで実装する方法を紹介したいと思います。 今年の10月にチャットワークはWebhookとOAuth2をリリースし、サービス間の連携がしやすくなりました。 developer.chatwork.com とはいえ、OAuth2の認可コードフローを用いたクライアントの開発は、 クライアントの登録 コンセント画面へアクセスさせるリンクの作成 発行された認可コードからアクセストークンを取得 アクセストークンを使ってAPIにアクセスする アクセストークンの有効期限が切れたらリフレッシュ といったお決まりのパターンを実装していく必要があり、アクセストークンの取得やリフレッシュ周りの実装を1から開発する

    チャットワークのOAuth2のクライアントをPHPで簡単に実装するためのライブラリを紹介 - kubell Creator's Note
  • 認証を含む API 開発で検討すべきこと - ボクココ

    ども、@kimihomです。 API に関する基礎的な話で、なぜ API が重要なのか、APIの実装で注意する点について記述した。 今回はAPI開発において最も頭を悩ます、認証の問題について考えてみたい。 API における認証 よくあるログインが必要なページを考えてみていただきたい。 通常のWebアプリケーションであれば、Cookieという仕組みを使って毎回Webサーバーにアクセスするときにsession idというものを送信し、それとユーザー情報を紐付けたデータを取ってくることで、どんなユーザーからリクエストが来たのかをWebアプリケーション側で判断することができる。これにより、私たちはいつも閲覧しているWebアプリケーションが自分専用の画面として見れるようになっている。 これがAPIになると話は違ってくる。Cookieという仕組みが使えないのである。ということで、なんとかしてAPIにア

    認証を含む API 開発で検討すべきこと - ボクココ
  • OAuth 2.0 の仕組みと認証方法

    OAuth 2.0 の仕組みと認証方法について説明します。OAuth 1.0 の認証フローとそれらの問題点から、OAuth 2.0 の認証フロー、認可コード、アクセストークン、リフレッシュトークンまで網羅します。

    OAuth 2.0 の仕組みと認証方法
  • Why Does OAuth v2 Have Both Access and Refresh Tokens?

    The link to discussion, provided by Catchdave, has another valid point (original, dead link) made by Dick Hardt, which I believe is worth to be mentioned here in addition to what's been written above: My recollection of refresh tokens was for security and revocation. <...> revocation: if the access token is self contained, authorization can be revoked by not issuing new access tokens. A resource d

    Why Does OAuth v2 Have Both Access and Refresh Tokens?