このビデオは、2020 年 1 月 31 日に開催した弊社勉強会のプレゼンテーション録画のパート 6 です。 プレゼンテーションのまとめと、紹介した仕様をすべて実装している Authlete の概要について、 Authlete の工藤達雄がお話しします。
工藤: はじめにお話ししましたけど、OAuth 2.0 も OpenID Connect も、だいたい 2010 年代前半には、ほぼ決まってたんですよね。 2015年にほぼ標準化というのが終わって、いまそれをみんな使っていると。
別にそれが廃れるとかじゃなくて、いろんな使い方が出てきて、いろんな環境があって、対応しなきゃいけないのが出てきたので、 プラクティス、適用方法だとか、関連仕様が、標準化の過程にあるというのが、いまかなと思います。
それはそれで使うも良し、 Identity Assurance とか Lodging Intent をやるようなしくみとか、そうだと思うんですけど、 こういうことがあったらこういうことができるっていうような、発想の契機としても役立つんじゃないかなと思います。
最後、ちょっといくつか宣伝をすると、今回 Authlete の独断と偏見ということで、たぶんいろいろお話ししてない部分があったかと思うんですね。 ただ我々としては、いま紹介した仕様というのがかなりイケてるんじゃないかと思っていて実装した、というところがあります。
今日ご紹介したものだけではなくて、 たとえば Dynamic Client Registration だとか、けっこういろんな仕様を実は実装しているので、 スペックシートってところを見ていただくと、こんなのできるのね、とおもしろいんじゃないかなあと思います。
Authlete を知らないかたにちょっとだけお話しすると、基本的には、我々のサービスは API を提供するバックエンドであって、 認可サーバーなりリソースサーバーは、この Authlete を使ってくださるお客さまのほうで作ってもらうしくみになっています。 お客さまの認可サーバーが認可リクエスト処理を受け付けて、プロトコル処理やトークン管理などの難しい部分に関しては我々のほうで受けますよ、 っていう API なんですね。
たとえば FAPI の、とくにパート 2 なんかだと、この中でけっこうキモになる Request Object とか、このあとの Hybrid Flow とか JARM をどうするのかだとか、 クレームの必須化だとか、いろいろやるべきことがあります。 こういうチェックを、たとえば銀行さんで FAPI やりたいって場合に、一個一個つぶすのはたぶん無理なので、 こういう部分を全部我々のほうで肩代わりする、というのが特長になります。
本当にこれが最後なんですけど、最後にリソースというかポインターとして、後ろにいます川崎の記事だとか。
あとはチュートリアルですね、OAuth とか、FAPI もいまできるので、 これを試していただくと、Authlete を使ってどうやって新しい仕様を実装するか、みたいなところを見ていただけるんじゃないかなと思います。
あとはそうですね、他のスライドもあるので、見ていただければなあと思います。
という感じで以上となります。
(以下は勉強会実施時の状況です。現在の Authlete のバージョンは 2.1 です)
あとすみません、一個大事なことを忘れていました。
この Authlete なんですけど、いまフリーでサインアップできるサイトはですね、authlete.com というところに行っていただくと出るんですね。
「無料トライアル」っていうところがあって、ここをクリックして、IDとパスワードを決めていただくと、すぐに使えるような感じで動きます。
現状 Authlete のバージョンが、パブリックでサインアップ可能なところは 1.1 というものでして、 さっきのスペックシートをよく見ると、 この仕様は 1.1 からですとか、この仕様は 2.0 からですとか書いてあるんですね。 今日ご紹介した仕様のうち、ほとんどは 2.1 からになります。
現状は1.1なんですけど、日曜日の夜からアップデートを行って、来週からは 2.1 ベースでサインアップできるような環境ができます。 ぜひそのタイミングで、まあ今からサインアップしていただいてもいいんですけど、2.1 になったタイミングから使っていただけるといいのかな、と思います。
あとこの PAR とか RAR とか、Resource Indicators とか、IDA とかっていうのは 2.2 からなんですが、 これは別途ご相談いただければ、調整することはできると思います。 もしご興味があればお声がけください。
あとそうですね、private_key_jwt
とか MTLS とかも 2.0 でいけるので、
ぜひ Sender Constrained Access Token とか試してみていただけるといいかな、と思います。