SlideShare a Scribd company logo
1 of 6
Herokuで動く認証機構の話
株式会社アピリオ
プリンシパルコンサルタント
福丸 慎治
アピリオの認証機構
• NEXT様の不動産検索サイトHOME’Sに会員サイト向けに導入
• 元々はAWS上で稼働するモジュール群
o アピリオのJapanオフィスメンバーで独自に開発
o 複数のお客さまにて稼働実績あり

• NoSQLベースだったが、Herokuに移植するにあたりPostgreSQL
を永続化先とできるように拡張
• JDK1.6 + Spring MVC + PostgreSQL
• 以下の機能を実装済み
o ユーザ登録
 パスワードは暗号化して保持(パスワードそのものは持たない)

o
o
o
o

セッション管理
メールによる確認
Facebook等他SNSによる認証
Oauth認証

© 2014 Appirio, Inc. - Confidential
アーキテクチャ
ユーザ情報

HOME’s Clubユーザ

ログイン情報

確認メール送信

セッション情報
State token

ユーザ登録/
ログイン

SendGrid

Backend Dyno#1
ビジネス
サービス

PostgreSQL

認証
サービス

Frontend(Cuon様)

Backend(Appirio)
ユーザ登録
NEXT様
Salesforce組織

© 2014 Appirio, Inc. - Confidential
認証機構の構成
10. Return result
1. API Call
From Frontend

ビジネス
サービス
9. Do
something

2. Sessoin Check

4. Call Login API

7. Get session

認証機構(Server)
3. Login

認証機構(Core)

8. Session

Spring Framework
JDK1.6

Cedar Stack
Heroku
© 2014 Appirio, Inc. - Confidential

5. Check
Password

PostgreSQL
6. Generate
Session
Herokuでやってみて・・・
• Heroku上のPostgreSQLの性能は十分
o 1000ユーザからの同時アクセスをシミュレートした
負荷テストを行ったが問題なし
o 今回採用したプランはミッドレンジであるため、今
後サイトの規模拡張に合わせて更にスケールアップ
できる余地あり

• 必要に応じてアプリケーションを構築・連携が容易
o 今回のシステムは大きく分けてFrontend、Backendに
分割され、それぞれPHP、Javaで構築したが、各々の
有利な面を活用して最適な仕組みを提供できた

© 2014 Appirio, Inc. - Confidential
是非お試しください!

© 2014 Appirio, Inc. - Confidential

More Related Content

What's hot

VPN・証明書はもう不要? Azure ADによるデバイス認証 at Tech Summit 2018
VPN・証明書はもう不要? Azure ADによるデバイス認証 at Tech Summit 2018VPN・証明書はもう不要? Azure ADによるデバイス認証 at Tech Summit 2018
VPN・証明書はもう不要? Azure ADによるデバイス認証 at Tech Summit 2018
Shinichiro Kosugi
 

What's hot (20)

161218 cybozu SRE
161218 cybozu SRE161218 cybozu SRE
161218 cybozu SRE
 
Zabbix製品・サービス紹介資料
Zabbix製品・サービス紹介資料Zabbix製品・サービス紹介資料
Zabbix製品・サービス紹介資料
 
Zabbix 2.0 新機能と改善点
Zabbix 2.0 新機能と改善点Zabbix 2.0 新機能と改善点
Zabbix 2.0 新機能と改善点
 
5分で分かるサイボウズのSRE
5分で分かるサイボウズのSRE5分で分かるサイボウズのSRE
5分で分かるサイボウズのSRE
 
2021/09/25 JAZUG11周年記念LT大会 ~FSLogixのお話~
2021/09/25 JAZUG11周年記念LT大会 ~FSLogixのお話~2021/09/25 JAZUG11周年記念LT大会 ~FSLogixのお話~
2021/09/25 JAZUG11周年記念LT大会 ~FSLogixのお話~
 
OSGi Applications(Open Alpha) for WAS7.0
OSGi Applications(Open Alpha) for WAS7.0OSGi Applications(Open Alpha) for WAS7.0
OSGi Applications(Open Alpha) for WAS7.0
 
Global Azure Bootcamp 2019@Tokyo資料【ExpressRoute構築でハメられた】
Global Azure Bootcamp 2019@Tokyo資料【ExpressRoute構築でハメられた】Global Azure Bootcamp 2019@Tokyo資料【ExpressRoute構築でハメられた】
Global Azure Bootcamp 2019@Tokyo資料【ExpressRoute構築でハメられた】
 
Zabbixを徹底活用してみよう ~4.2の最新情報もご紹介~
Zabbixを徹底活用してみよう ~4.2の最新情報もご紹介~Zabbixを徹底活用してみよう ~4.2の最新情報もご紹介~
Zabbixを徹底活用してみよう ~4.2の最新情報もご紹介~
 
IDaaS を正しく活用するための認証基盤設計
IDaaS を正しく活用するための認証基盤設計IDaaS を正しく活用するための認証基盤設計
IDaaS を正しく活用するための認証基盤設計
 
MSPサービスを支えるCircleCI
MSPサービスを支えるCircleCIMSPサービスを支えるCircleCI
MSPサービスを支えるCircleCI
 
VPN・証明書はもう不要? Azure ADによるデバイス認証 at Tech Summit 2018
VPN・証明書はもう不要? Azure ADによるデバイス認証 at Tech Summit 2018VPN・証明書はもう不要? Azure ADによるデバイス認証 at Tech Summit 2018
VPN・証明書はもう不要? Azure ADによるデバイス認証 at Tech Summit 2018
 
Jbossとtomcatの性能を比べてみた
Jbossとtomcatの性能を比べてみたJbossとtomcatの性能を比べてみた
Jbossとtomcatの性能を比べてみた
 
20190222 osc2019tokyospring
20190222 osc2019tokyospring20190222 osc2019tokyospring
20190222 osc2019tokyospring
 
Salesforce1 アプリをGruntでデプロイ
Salesforce1 アプリをGruntでデプロイSalesforce1 アプリをGruntでデプロイ
Salesforce1 アプリをGruntでデプロイ
 
インフラ刷新プロジェクト「Neco」が目指す最高のクラウドとは
インフラ刷新プロジェクト「Neco」が目指す最高のクラウドとはインフラ刷新プロジェクト「Neco」が目指す最高のクラウドとは
インフラ刷新プロジェクト「Neco」が目指す最高のクラウドとは
 
PHPバージョン別応答速度比較
PHPバージョン別応答速度比較PHPバージョン別応答速度比較
PHPバージョン別応答速度比較
 
ネットワークから学ぶソフトウェアセキュリティの基礎
ネットワークから学ぶソフトウェアセキュリティの基礎ネットワークから学ぶソフトウェアセキュリティの基礎
ネットワークから学ぶソフトウェアセキュリティの基礎
 
Heroku HTTP API Design Guide
Heroku HTTP API Design GuideHeroku HTTP API Design Guide
Heroku HTTP API Design Guide
 
「Ansible on Azure入門」資料
「Ansible on Azure入門」資料「Ansible on Azure入門」資料
「Ansible on Azure入門」資料
 
Azure Cosmos DB Always Encrypted
Azure Cosmos DB Always EncryptedAzure Cosmos DB Always Encrypted
Azure Cosmos DB Always Encrypted
 

Viewers also liked

Guia prevencao albert_einstein
Guia prevencao albert_einsteinGuia prevencao albert_einstein
Guia prevencao albert_einstein
Elizeu9812
 
INTEGRACION DIDACTICA - NUEVAS TECNOLOGIAS
INTEGRACION DIDACTICA - NUEVAS TECNOLOGIASINTEGRACION DIDACTICA - NUEVAS TECNOLOGIAS
INTEGRACION DIDACTICA - NUEVAS TECNOLOGIAS
Jenny González
 
Natural disasters
Natural disastersNatural disasters
Natural disasters
hannamol
 
PELIGROS DE LA REDES SOCIALES
PELIGROS DE LA REDES SOCIALESPELIGROS DE LA REDES SOCIALES
PELIGROS DE LA REDES SOCIALES
ejulio42
 

Viewers also liked (20)

Renovação 2
Renovação 2Renovação 2
Renovação 2
 
Presentación de proyecto
Presentación de proyectoPresentación de proyecto
Presentación de proyecto
 
Angela sanchez f.m 07
Angela sanchez f.m 07Angela sanchez f.m 07
Angela sanchez f.m 07
 
Guia prevencao albert_einstein
Guia prevencao albert_einsteinGuia prevencao albert_einstein
Guia prevencao albert_einstein
 
Boletin de antropologos nº03
Boletin de  antropologos nº03Boletin de  antropologos nº03
Boletin de antropologos nº03
 
Voz da paróquia Fevereiro 2015
Voz da paróquia Fevereiro 2015Voz da paróquia Fevereiro 2015
Voz da paróquia Fevereiro 2015
 
Calorimetria
CalorimetriaCalorimetria
Calorimetria
 
INTEGRACION DIDACTICA - NUEVAS TECNOLOGIAS
INTEGRACION DIDACTICA - NUEVAS TECNOLOGIASINTEGRACION DIDACTICA - NUEVAS TECNOLOGIAS
INTEGRACION DIDACTICA - NUEVAS TECNOLOGIAS
 
Nossas confidências
Nossas confidênciasNossas confidências
Nossas confidências
 
Laboratorio1
Laboratorio1Laboratorio1
Laboratorio1
 
Angela
AngelaAngela
Angela
 
Natural disasters
Natural disastersNatural disasters
Natural disasters
 
Campo Eléctrico
Campo Eléctrico Campo Eléctrico
Campo Eléctrico
 
PELIGROS DE LA REDES SOCIALES
PELIGROS DE LA REDES SOCIALESPELIGROS DE LA REDES SOCIALES
PELIGROS DE LA REDES SOCIALES
 
presentacion ana lilia
presentacion ana liliapresentacion ana lilia
presentacion ana lilia
 
Apresentação do Clube do Empreendedor 2014
Apresentação do Clube do Empreendedor 2014Apresentação do Clube do Empreendedor 2014
Apresentação do Clube do Empreendedor 2014
 
Boletín cafe ciencia y salud nº 17
Boletín cafe ciencia y salud nº 17Boletín cafe ciencia y salud nº 17
Boletín cafe ciencia y salud nº 17
 
NO A LA VIOLENCIA
NO A LA VIOLENCIANO A LA VIOLENCIA
NO A LA VIOLENCIA
 
Amigas
AmigasAmigas
Amigas
 
Voz da Paróquia - Fevereiro 2012
Voz da Paróquia - Fevereiro 2012Voz da Paróquia - Fevereiro 2012
Voz da Paróquia - Fevereiro 2012
 

Similar to Herokuで動く認証機構の話

7 power night2014_kanbayashi
7 power night2014_kanbayashi7 power night2014_kanbayashi
7 power night2014_kanbayashi
TerraSky
 
第七回 渋谷Java - Apache Shiroを使ってみた
第七回 渋谷Java - Apache Shiroを使ってみた第七回 渋谷Java - Apache Shiroを使ってみた
第七回 渋谷Java - Apache Shiroを使ってみた
chonaso
 
ゼロからはじめるサーバーサイド Vol2
ゼロからはじめるサーバーサイド Vol2ゼロからはじめるサーバーサイド Vol2
ゼロからはじめるサーバーサイド Vol2
Taichi Inaba
 
20141111 themi struct
20141111 themi struct20141111 themi struct
[OpenStack Days Tokyo 2015] Zabbixを用いたOCPベアメタル監視環境構築の自働化
[OpenStack Days Tokyo 2015] Zabbixを用いたOCPベアメタル監視環境構築の自働化[OpenStack Days Tokyo 2015] Zabbixを用いたOCPベアメタル監視環境構築の自働化
[OpenStack Days Tokyo 2015] Zabbixを用いたOCPベアメタル監視環境構築の自働化
cloudconductor
 

Similar to Herokuで動く認証機構の話 (20)

7 power night2014_kanbayashi
7 power night2014_kanbayashi7 power night2014_kanbayashi
7 power night2014_kanbayashi
 
Introduction to application architecture on asp.net mvc
Introduction to application architecture on asp.net mvcIntroduction to application architecture on asp.net mvc
Introduction to application architecture on asp.net mvc
 
Serverless AWS構成でセキュアなSPAを目指す
Serverless AWS構成でセキュアなSPAを目指すServerless AWS構成でセキュアなSPAを目指す
Serverless AWS構成でセキュアなSPAを目指す
 
第七回 渋谷Java - Apache Shiroを使ってみた
第七回 渋谷Java - Apache Shiroを使ってみた第七回 渋谷Java - Apache Shiroを使ってみた
第七回 渋谷Java - Apache Shiroを使ってみた
 
ゼロからはじめるサーバーサイド Vol2
ゼロからはじめるサーバーサイド Vol2ゼロからはじめるサーバーサイド Vol2
ゼロからはじめるサーバーサイド Vol2
 
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
 
Keycloak拡張入門
Keycloak拡張入門Keycloak拡張入門
Keycloak拡張入門
 
Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版
 
SoftLayer API で資産管理をお手伝い!
SoftLayer API で資産管理をお手伝い!SoftLayer API で資産管理をお手伝い!
SoftLayer API で資産管理をお手伝い!
 
価値を届ける技術 #bpstudy 96
価値を届ける技術 #bpstudy 96価値を届ける技術 #bpstudy 96
価値を届ける技術 #bpstudy 96
 
AzureAD for Java
AzureAD for JavaAzureAD for Java
AzureAD for Java
 
20141111 themi struct
20141111 themi struct20141111 themi struct
20141111 themi struct
 
JAZUG 4周年総会 「トラブルから学ぶAzure世渡り術」
JAZUG 4周年総会 「トラブルから学ぶAzure世渡り術」JAZUG 4周年総会 「トラブルから学ぶAzure世渡り術」
JAZUG 4周年総会 「トラブルから学ぶAzure世渡り術」
 
EC-CUBE API プラグイン勉強会
EC-CUBE API プラグイン勉強会EC-CUBE API プラグイン勉強会
EC-CUBE API プラグイン勉強会
 
[OpenStack Days Tokyo 2015] Zabbixを用いたOCPベアメタル監視環境構築の自働化
[OpenStack Days Tokyo 2015] Zabbixを用いたOCPベアメタル監視環境構築の自働化[OpenStack Days Tokyo 2015] Zabbixを用いたOCPベアメタル監視環境構築の自働化
[OpenStack Days Tokyo 2015] Zabbixを用いたOCPベアメタル監視環境構築の自働化
 
Azure VMを検証に使う - 便利なHyper-Vスナップショットを使う方法
Azure VMを検証に使う - 便利なHyper-Vスナップショットを使う方法Azure VMを検証に使う - 便利なHyper-Vスナップショットを使う方法
Azure VMを検証に使う - 便利なHyper-Vスナップショットを使う方法
 
OAuth2.0によるWeb APIの保護
OAuth2.0によるWeb APIの保護OAuth2.0によるWeb APIの保護
OAuth2.0によるWeb APIの保護
 
AWSによるサーバーレスアーキテクチャ
AWSによるサーバーレスアーキテクチャAWSによるサーバーレスアーキテクチャ
AWSによるサーバーレスアーキテクチャ
 
はたらく認証
はたらく認証はたらく認証
はたらく認証
 
[SC13] ログ管理で向上させるセキュリティ
[SC13] ログ管理で向上させるセキュリティ[SC13] ログ管理で向上させるセキュリティ
[SC13] ログ管理で向上させるセキュリティ
 

Recently uploaded

Recently uploaded (7)

LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 

Herokuで動く認証機構の話