OpenAMとは?特徴やコミュニティまで解説

SSOは1度のユーザー認証によって複数のシステムの利用が可能になる仕組みのことであり、OpenAMはSSOを実現するOSSです。本記事ではOpenAMについて、その特徴や日本における開発コミュニティーについて解説します。

OpenAMとは?

OpenAMとは、Javaをベースとして作られた、SSOのオープンソースソフトウェアです。CDDLライセンスとしてソースコードが公開されています。OpenAMは、OpenSSOから派生して開発されました。OpenSSOとは、Sun Microsystems社が開発した「Access Manager」をオープンソース化した製品です。2010年、ForgeRock社が引き継ぐ形でOpenSSOをOpenAMとして開発しました。2016年、ForgeRock社はOpenAMの最新ソースコードをクローズしましたが、日本においてはOpenAMコンソーシアムという組織で共同開発が行われています。現在の最新版は2019年にリリースされたOpenAM14です。

OpenAMの特徴

OpenAMの特徴について解説します。

多様な認証方式に対応

OpenAMは、20種類以上の認証方式をサポートします。OpenAMがサポートする主な認証方式としては、エージェント方式、リバースプロキシ方式、代理認証方式、フェデレーション方式などがあげられます。多様な認証方式に対応できるOpen AMは、オープンスタンダードに基づいたカスタム認証モジュールを作成できる柔軟性も持ち合わているといえるでしょう。
例えば、「リスクベース認証(アダプティブリスク認証)」を利用すれば、「ログイン時間/ログイン接続場所/ログインデバイスなどの情報によるリスク評価を行い、より厳格な認証方式を要求する」などのことが行なえます。

※リスクベース認証(アダプティブリスク認証)についての解説はこちら
「リスクベース認証とは?|概要やメリットについて解説」

※認証方式についての解説はこちら「SSOの仕組みと認証方式を解説」

高可用性

OpenAMは「システムフェイルオーバー」と「セッションフェイルオーバー」の可用性向上機構をサポートしています。大規模かつミッションクリティカルな環境において、単一障害点を排除し、常にシングルサインオン認証サービスを提供し続けるために寄与します。
※システムフェイルオーバー
システムフェイルオーバーとは、稼働中のシステムに問題が生じてシステムやサーバが停止したときに、自動的に待機システムへ切り替える仕組みのことです。
※セッションフェイルオーバー
セッションフェイルオーバーとは、セッション情報をデータベースで管理できる仕組みのことです。

Windows連携に対応

WindowsのKerberos認証を利用して、OpenAMとActive Directoryを連携できます。
※Kerberos認証
Kerberos認証とは、Active Directoryで利用されている認証方式のことです。接続元と接続先で相互認証できることが特徴となっています。

多要素認証に対応

「ID+パスワード」による認証だけではなく、さまざまな認証方式と連携できます。近年では、あらゆるサービスで生体認証(指紋/指静脈/虹彩など)、ICカード認証、ワンタイムパスワードトークン認証などの多要素認証の導入がされています。多要素認証への対応ができることは、OpenAMの大きな特徴と言えます。
※多要素認証についての解説はこちら「多要素認証(MFA)とは|メリット、デメリットについて解説」

RESTful APIを実現

OpenAMはRestful APIを実現します。APIとはプログラムを介してアプリケーションやソフトウェアの資源を使用するための接続口のことです。「REST」という設計原則を適用したAPIをRESTful APIといいます。「REST」とはRepresentational State Transferの略であり、2000年にRoy Fielding氏によって提唱されました。RESTは以下の4項目を原則としています。

  • 統一のインターフェイス
  • アドレス可能性
  • 接続性
  • ステートレス性

最新の認証技術へ迅速に対応

OpenAMの場合、新しい認証標準プロトコルに迅速に対応するため、より早いタイミングで新しいプロトコルへの対応準備が可能です。これにより、最新の認証技術へ対応し続けることができます。

OpenAMコンソーシアムとは?

オープンソースコミュニティーとは

オープンソースコミュニティーとは、OSSについての情報交換や共同での開発を目的とした有志により組織されたコミュニティーです。OSSはソースコードが公開されているので、コミュニティーを作り共同での開発や勉強会を開催することが可能です。多くのコミュニティーは非営利で活動しており、対象のOSSのユーザーや愛好家、開発に携わる人等によって構成されています。

OpenAMコンソーシアムとは

OpenAMコンソーシアムとは、OpenAMを維持・発展・普及させるために設立した組織です。ユーザー企業が継続的にOpenAMを利用できることを目的として活動しています。国内のユーザー企業が今後も安心して「OpenAM」を継続的に利用できるようにするため、また、近年のコンプライアンスや内部統制の強化する風潮へ対応するために設立されました。
具体的な取り組みとしては、ユーザー企業同士での共同開発を行っています。2016年に最新のソースコードをクローズしたことを受け、2018年よりソースコードを一般公開し、ユーザー企業同士で共同開発ができる取り組みを始めました。この共同開発のメリットとして、ユーザー企業が参加しやすいことが挙げられます。また、開発に参加する企業が増えると、開発やメンテナンスにかかる負荷が減るという恩恵を得ることができます。さらに、バグや脆弱性の情報を開発企業同士で共有することも可能です。特に脆弱性情報は報セキュリティ早期警戒パートナーシップに則り、IPA経由で脆弱性を公開しています。

まとめ

以上のようにOpenAMは、様々な機能を持ち合わせているOSS認証基盤であると言えます。エージェント方式やリバースプロキシ方式などの認証方式に対応することや、多要素認証への対応ができるといった部分は、OpenAMの強みと言えるでしょう。また、OpenAMコンソーシアムでは、OpenAMの共同開発を行うなどの取り組みを通して、OpenAMを継続的に利用できるようにしています。
かもめエンジニアリングでは、OpenAMやKeycloakなどのOSS認証基盤をベースとした「KAMOME SSO」を提供しています。ご興味やご相談がある方は、ぜひ下記お問い合わせフォームよりご連絡ください。

事業・商品・サービスに関するお問い合わせ

製品に関するお問い合わせはこちら

※フリーメールでのお問い合わせは受け付けておりません。

必須
必須
必須
必須
必須
必須
必須