OAuth2.0サーバを素早く立てるライブラリ・フレームワークまとめ

認証を行うAPIとしてはOpenIDが有名なのですが、認証だけであるためにメールアドレスの取得であったり、その後のシステム連携に繋げられないといった不満があります。そこで認証と委譲を行うOAuth(特に1.0の問題点を解決したOAuth2)を使うのが一般的になっています。

そこで今回は既存のシステムはもちろん、今後作られるシステムでも手軽にOAuth2の機能が追加できるライブラリを紹介します。

PHP

bshaffer/oauth2-server-php : 特に依存のないOAuth2サーバです。既存システムと並列して疎結合で立てるのが良さそうです。

thephpleague/oauth2-server : こちらも独立型ですが、CakePHP3やLaravelとの連携も想定されています。

lucadegasperi/oauth2-server-laravel : Laravelフレームワーク用のOAuth2サーバライブラリです。

zfcampus/zf-oauth2 : 名前の通り、Zend Framework用のOAuth2サーバライブラリです。

bshaffer/oauth2-server-bundle : SymfonyアプリケーションにOAuth2サーバ機能を追加します。

Filsh/yii2-oauth2-server : Yii2アプリケーションにOAtuh2サーバ機能を追加します。

sumeko/phalcon-oauth2-server : こちらはPhalcon向けのOAuth2サーバです。

justingreerbbi/wordpress-oauth-server : WordPressプラグインとして動作するOAuth2サーバです。

Ruby

assaf/rack-oauth2-server : Rackアプリケーションなので独立して利用できます。

doorkeeper-gem/doorkeeper : RailsアプリケーションにOAuth2サーバ機能を組み込めます。

songkick/oauth2-provider : ごくシンプルなOAuth2サーバで、Sinatraなどで使うこともできます。

Python

joestump/python-oauth2 : Python 2.6/2.7/3.3/3.4に対応しています。多くのフレームワークと組み合わせて利用できます。

hiidef/oauth2app : Djangoアプリケーションの中で使えるOAuth2サーバです。

Node.js

thomseddon/node-oauth2-server : Expressと組み合わせて使えるNode.js用のOAuth2サーバです。

ammmir/node-oauth2-provider : こちらもExpressと組み合わせて使うOAuth2サーバです。

.NET

IdentityServer/IdentityServer3 : OAuth2だけでなく、OpenIDにも対応したサーバです。

Go

RichardKnop/go-oauth2-server : GoとPostgreSQLによるOAuth2サーバです。

Java

tuxdna/play-oauth2-server : Play! 2.0 framework用のOAuth2サーバです。


OAuth2サーバを立てることで、APIとしてぐっと使いやすくなります。企業向けとなるとユーザ管理の構造化なども求められるかも知れませんが、基本的にはこれらを拡張していく形で実装できるでしょう。

API構築の際にお試しください。

© NTT Communications Corporation All Rights Reserved.