高速化されたopenldapの実力と - osstech.co.jp · •...

34
Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. -1- 高速化されたOpenLDAPの実力と OpenAMの多要素認証機能の活用 オープンソース・ソリューション・テクノロジ株式会社 2017915技術取締役 武田 保真

Upload: others

Post on 23-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 1 -

高速化されたOpenLDAPの実力と

OpenAMの多要素認証機能の活用

オープンソース・ソリューション・テクノロジ株式会社

2017年9月15日

技術取締役 武田保真

Page 2: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 2 -

目次

• OpenAM最新動向

• OpenLDAP最新動向

Page 3: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 3 -

OpenAMとOpenLDAP

Webサービス

SSO

認証

社内設備

認証

• OSSのシングルサインオン(SSO)サービス

• Webサービスなどの認証を統合

• SAML や OpenID Connectなどの

認証連携(フェデレーション)に対応

• OSSのLDAPサービス

• ユーザー情報を保管し認証を行う

• LDAPに対応したサービスや機器が多い

Page 4: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 4 -

OpenAM 2017 Topics

• ForgeRockがソースコード公開ポリシーを変更

• EOLの製品ソースコードのみを公開

• 現在は OpenAM11系が公開対象

ソースコード(GitHub )

JIRA(issue tracker)

MavenレポジトリCLOSED

× ×

×

Page 5: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 5 -

OpenAMのFork

• ForkしたOpenAM

• http://wrensecurity.org/

• ソースコード(wren:AM)

• https://github.com/WrenSecurity/wrenam

Page 6: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 6 -

OSSTechのOpenAMへの取り組み

• OSSTech版 OpenAMソース公開

• OpenAM 13.0をベース

• OSSTech版に適用しているパッチ込み

https://github.com/osstech-jp/openam

• OSSTech版 OpenAM評価版

お問合せ先 : [email protected]

Page 7: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 7 -

OSSTech の OpenAM最近のトレンド

• 認証モジュールのカスタマイズ

• ユーザーやシステムの要望に合わせた認証フロー

• プロトコルハブとしての利用形態

Idp/OP

SP/RP

SAML

OIDC

Page 8: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 8 -

JICS 2017 展示内容

• OpenAMデモ (技術検証内容を展示)

• マイナンバーカードでクライアント証明書認証

• OTPコードの通知をLINEで行おう

Page 9: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 9 -

デモ概要1:マイナンバーカードでクライアント認証

利用者

①クラウドサービス

Webアプリケーション

事前準備:マイナンバーカードの認証用証明書の情報をOpenLDAPに登録*

①ユーザーがNFCデバイスにマイナンバーカードをタッチ

②OpenAMで認証完了!

*保存されている情報にマイナンバー情報は含まれません

NFC )))

Page 10: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 10 -

マイナンバーカードでクライアント認証

• マイナンバーカードの構成

• 署名用証明書 / 認証用証明書

• OpenSCドライバによるマイナンバーカード対応

• ブラウザの認証にマイナンバーカードを利用可能

マイナンバーカードをクライアント証明書のインフラとして活用

Page 11: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 11 -

OpenSCとは

https://github.com/OpenSC/OpenSC/wiki

https://www.osstech.co.jp/~hamano/

• クロスプラットホームで動作するスマートカード用の

ツール・ライブラリ群

• Windows / Mac / Linux など• Edge / Safari / Chrome / Firefox など

バージョン 0.17 にて JPKI ドライバとしてマイナンバーカードに対応済み

Page 12: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 12 -

Webブラウザ

マイナンバーカードによる認証(構成)

マイナンバーカード

カードリーダー

OpenSCドライバユーザー

クライアント証明書認証

オープンソースのソフトウェアのみで構成可能

Page 13: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 13 -

認証の準備

• マイナンバーカードに保存されている情報を事前登録

• 認証用証明書の登録、もしくはCNを事前登録

• 保存されている情報にマイナンバーは含まれていません

Page 14: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 14 -

事前準備-Firefox-(1)

• 「セキュリティデバイス」の設定

Page 15: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 15 -

事前準備-Firefox-(2)

• OpenSCデバイスを設定

Page 16: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 16 -

マイナンバーカードによる認証

• 証明書認証が必要なサイトへのアクセス• PINコードの入力• 失敗は連続3回まで• 正しいPINコード入力でカウントクリア• ロックされた場合は役所で再設定手続き必要

Page 17: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 17 -

デモ概要2:LINE OTPモジュールで認証

事前準備:初回ログイン時にLINE Notifyに連携登録

①ユーザーがID/パスワードで認証後、LINEにOTPを通知

②OpenAMで多要素認証完了!

クラウドサービス

Webアプリケーション

① ②

利用者

Page 18: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 18 -

OpenAM - LINE OTPモジュール -

• 多要素認証

• 低コストで利便性の高い方式

• LINEによるOTPコードのユーザーへの通知

• LINE notify APIを利用

• ユーザー単位のアクセストークン制限(1000回/h)

Page 19: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 19 -

OpenAM - LINE OTPモジュール (2) -

初回ログイン時にLINE notifyに登録

Page 20: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 20 -

OpenAM - LINE OTPモジュール(3) -

2回目以降のログインはLINE にOTPコード通知

Page 21: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 21 -

OpenLDAP 2017 Topics

• OpenLDAPの開発状況

• OpenLDAP 2.4 (安定版)

• OpenLDAP 2.5 (開発版) … リリースプランは未定

• 最近のお客様の傾向• SHA2/PBKDF2利用の増加 ……. パスワード漏洩対策• 商用LDAPサービスからの移行 ……. 機能・性能・コストで比較

• RHEL7.4 openldap-serversパッケージが deprecated

• OSSTech版OpenLDAPへ移行可能

Page 22: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 22 -

OSSTech版OpenLDAPの改良

• 課題

• BerkleyDB(BDB)のライセンス問題

• 大規模環境におけるBDB(更新系)の限界

• Community

• LMDBの開発

• OSSTech

• WiredTigerバックエンドの開発

• OpenLDAP 2.5への取り込み完了

Page 23: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 23 -

OpenLDAP大規模環境における問題点

• エントリ数の増加に対する更新時間の増大

• 一括データ投入時間

• 初期投入、リストア時

• 更新頻度の高い環境

• ログイン時刻の記録など更新性能に起因する

設計・運用上の制約

Page 24: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 24 -

WiredTiger DBの特長

• ファイルベース Database

• マルチコア、大容量メモリ対応

• ロックフリーのアルゴリズム

• Core数の増加に応じた更新性能向上

• コア開発者は元BDB開発者

• BDBの問題点を解消

Page 25: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 25 -

WiredTigerバックエンドの制約

• slapd実行中のslapcat 不可

• データエクスポートはldapsearchを利用

• OpenLDAP 2.5の開発ソースのみで利用可能

Page 26: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 26 -

OpenLDAPベンチマーク

測定環境

• CentOS 7 / OSSTech版 OpenLDAP 2.4.45

• CPU 24core / メモリ 10GB / SAS HDD (KVM 仮想ゲストOS)

LDAPサンプルエントリdn: uid=user1,ou=Users,dc=example,dc=comobjectClass: topobjectClass: personobjectClass: inetOrgPersonobjectClass: posixAccountuid: user1cn: user1sn: testusergivenName: user1uidNumber: 100000gidNumber: 1000userPassword: {SSHA}u9sXy3bV21JWPwyfysqdDEkXfO/uuPAEhomeDirectory: /home/user1loginShell: /bin/bash

Page 27: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 27 -

OpenLDAPベンチマーク(1)

77718

4180

349

162816

9104

328

7643

481

52

16538

1026

43

0 20000 40000 60000 80000 100000 120000 140000 160000 180000

1000万件

100万件

10万件

slapadd によるデータインポート(index有り) (秒)

WiredTiger LMDB(nodbsync) LMDB BDB

WiredTiger : 4時間

LMDB(nodbsync): 2時間

LMDB(default) : 45時間

BDB : 21時間

Page 28: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 28 -

OpenLDAPベンチマーク(2)

226

194

15551

21034

203

204

18241

25892

1896

1842

18179

22314

12571

5086

15861

23568

0 5000 10000 15000 20000 25000 30000

MODIFY

ADD

SEARCH

BIND

LDAP操作ベンチマーク結果 (req/sec)

WiredTiger LMDB(nodbsync) LMDB BDB

12571件/sec

5086件/sec

Page 29: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 29 -

ベンチマーク結果サマリー

• 参照性能

• どのデータベースを選択しても大差はない

• 更新性能

• WiredTigerバックエンドが優秀

• 更新が多いシステム

• 大量エントリ(100万件以上)を管理するシステム

Page 30: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 30 -

OSSTech版 OpenLDAP 2.4

• WiredTigerバックエンド対応版の提供開始

• 対応OS: RHEL7 / CentOS 7

• OSSTech版 OpenLDAP2.4パッケージに機能追加

• BDBからエクスポート・インポートで切り替え可

• パートナーサイトから評価版提供開始

• 評価版希望の場合は、お申込みを

Page 31: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 31 -

LDAPcon2017への参加

• ベルギーブリュッセルで 10月に開催

• OpenLDAPのmrubyバックエンドについて発表予定

https://ldapcon.org/2017/

Page 32: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 32 -

協業パートナー募集のお知らせ

• ユーザーフレンドリーな認証フローや、多要素認証の実現を

お手伝いします

• IDaaSやSaaSといったOSSTech社のサービス提供予定は

ございませんので、パートナーの皆様のサービスの実現に

弊社製品をご活用ください

お問合せ先 : [email protected]

Page 33: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 33 -

告知:11/1にプライベートセミナーを開催します

先着30名様のプライベートセミナー!

OpenAM/OpenLDAPの最新情報をお伝えします。

お申込みはお手元のチラシに記載のメールアドレス

もしくは展示会場でも受付いたします。

Page 34: 高速化されたOpenLDAPの実力と - osstech.co.jp · • OpenSCドライバによるマイナンバーカード対応 • ブラウザの認証にマイナンバーカードを利用可能

Copyright © 2017 Open Source Solution Technology Corporation All Rights Reserved. - 34 -