マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2020.01.01

【OSS情報アーカイブ】OpenAM

【OSS情報アーカイブ】OpenAM

※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。

「OpenAM」とは

「OpenAM」基本情報

■概要

OpenAM(オープンエーエム)とは、オープンソースの認証ソリューションです。認証/アクセス認可/フェデレーションなどの高機能を備え、シングルサインオン機能を提供します。

■シングルサインオンとは

シングルサインオン(Single Sign-On:SSO)とは、システム利用時に、最初の1度だけログイン処理を行えば、以降はログイン処理なしで、すべてのシステムを利用できる仕組みです。

主なメリット

・ユーザ/システム管理者の手間を大幅に軽減
・アクセス制御の統合/強化
・セキュリティ対策
・個人情報漏洩防止強化 など

■基本説明

OpenAMは、シングルサインオンを実現する製品として、商用製品と同等の機能が実装されています。

■OpenAMの歴史

1.「Sun Java System Access Manager」と「Sun Java System Federation Manager」(旧サン・マイクロシステムズのアイデンティティ管理商用製品)
2.OpenSSO(Oracle社)
3.OpenAM(ForgeRock社)

■オフィシャルサイト情報

オフィシャルサイト

→GitHub →OpenIdentityPlatform/OpenAM

ライセンス情報

OpenAMのライセンスは「CDDL(Common Development and Distribution License)」です。

詳細について、こちらを参照ください。
→GitHub →OpenIdentityPlatform/OpenAM →LICENSE.md

ダウンロード

→GitHub →OpenIdentityPlatform/OpenAM

導入事例

→OpenAMコンソーシアム →事例紹介

■同様製品

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「Keycloak」など。

「OpenAM」の主な特徴

■豊富な実績

もともと商用製品であったため、日本を含むグローバルで多くの導入実績があります。

大規模環境でも多くの稼動実績があります。

■高信頼性&スケーラビリティ

数百万〜数千万ユーザの大規模システムでも稼働できるように、「高パフォーマンス性」と「可用性」を重視して設計されています。

■マルチプラットフォーム

OpenAMは、Javaベースで実装されています。多くの主要OSで稼働します。

■最先端の標準仕様を取り込み

OpenAMは、最新の認証標準技術などを積極的に実装しています。

そのため、早い段階から、新技術の機能を試すことができ、新プロトコルへの対応準備も行えます。

■REST API

「REST APIで機能を使用する」ことで、コードの変更は行わずに、望む機能を実現できるようになっています。

主な対応SSO方式

■エージェント方式

アクセス制御対象サーバに、エージェントソフトウェアを導入することでSSOを実現する形式です。

エージェント方式

■リバースプロキシ方式

ブラウザとWeb(アプリケーション)サーバの間に、OpenAMエージェントを導入した「リバースプロキシサーバ」を設置することにより、シングルサインオンを実現する方式です。

主なメリット

・関連する全サーバへのエージェント導入/メンテナンスが不要
・さまざまなOS/ミドルウェア環境に対して柔軟に対応可能
・複数のアプリケーションへ展開しやすい
・リバースプロキシサーバを介して、安全に外部公開が可能

リバースプロキシ方式

■代理認証方式

対象アプリケーションのログインページに対して、ユーザーの代わりに、ID+パスワードを送信することで、シングルサインオンを実現する方式です。

エージェント方式、もしくは、リバースプロキシ方式と組み合わせて利用されます。

アプリケーション側でシングルサインオンに対応できない場合などに採用されます。

■フェデレーション方式

異なるドメイン間で、パスワードなどの情報を渡さずにシングルサインオンを実現する方式です。

SSO用技術標準「SAML(Security Assertion Markup Language)」に対応するSaaS系アプリケーション(GoogleApps、Salesforce、サイボウズなど)に対してSSO連携できます。

■多要素認証方式

IDとパスワードによる認証だけではなく、他の認証方式と組み合わせることで、セキュリティレベルを向上できます。
・生体認証(指紋認証、指静脈認証など)
・ICカード認証(社員証)
・ワンタイムパスワードトークン など

■OpenID認証方式

「GoogleIDでログイン」や「FacebookIDでログイン」などの機能を利用できます。

■Kerberos認証方式

Kerberos認証で、WindowsのActiveDirectoryとOpenAMを連携できます。

情報提供協力

このページは、かもめエンジニアリング株式会社の協力により作成しました。

OpenAMに関する導入支援、サポートのご相談は、こちらまでお願いします。

 

参考元サイト

OpenAM参考情報①OpenAMのインストールと環境構築

「OpenAM」についてのインストール/環境構築に関する参考情報を紹介します。

■「OpenAM 13」×「CentOS 7.0」編

概要

「CentOS 7.0」環境に「Tomcat」+「OpenAM13」をインストールして、OpenAMの初期設定を行う手順について解説されています。

解説テーマ

[OpenAMのインストール(デプロイ)]
・JDKのインストール
・Tomcatのインストールと設定
・OpenAMのデプロイとTomcatの起動
[OpenAMの初期設定]
・手順1: 一般
・手順2: サーバー設定
・手順3: 設定データストア設定
・手順4: ユーザーデータストア設定
・手順5: サイト設定
・手順6: デフォルトのポリシーエージェントユーザー

ページリンク

→GitHub →k-tamura →openam-book-jp

■「OpenAM 13」×「Windows」編

概要

Windows環境への「OpenAM13.0.0」のインストール手順です。

導入環境

「Tomcat7.0.68(Windows版)」上に配備しています。

解説テーマ

・ForgeRock社サイトからOpenAM媒体をダウンロード
・ダウンロードしたzipを解凍
・Tomcatの管理画面からアップロードできるファイルサイズを増やす
・Tomcatの管理画面から、OpenAMのwarを指定して配備
・OpenAMのURLにアクセスし、セットアップ画面表示を確認
・データストア設定
・ロードバランサ設定
・OpenAMインストール
・ログイン確認

ページリンク

→メモーる →OpenAM13.0.0のインストール

■「OpenAM 13」×「Azure(CentOS)」

概要

Azure上のCentOSにOpenAMをインストールする手順です。

OpenLDAPを使用して、シングルサインオン環境を構築しています。

解説テーマ

1 構築環境について
2 事前準備
3 OpenAMインストール
4 初期設定
5 データストアの変更
6 動作確認

ページリンク

→SIOS →OSSonAzure技術ブログ →Azure上のCentOSにOpenAMを構築しシングルサイオン(SSO)を実現(インストール~初期設定編)

■「OpenAM 13」×「AWS EC2(Red Hat Enterprise Linux 7.3」

概要

AWSのEC2へのOpenAMインストール手順がまとめられています。

解説テーマ

・概要
・構成
・サーバ構築
・設定
・動作テスト

ページリンク

→OSS Fan →OSSでLinuxサーバ構築 →OpenAM 13.0.0をAWSのEC2(RHEL 7.3)へインストールして初期設定

OpenAM参考情報②OpenAMと「SAML」

OpenAM参考情報②OpenAMと「SAML」

「OpenAM」についての「SAML連携機能」に関する参考情報を紹介します。

■「SAML(Security Assertion Markup Language)」とは

・異なるインターネットドメイン間でユーザー認証を行うための標準規格
・XMLベースの言語仕様
・ユーザーディレクトリ情報(Active Directoryなど)を使用して、複数のクラウドサービスへのシングルサインオンが可能
・Cookieを使用する方法よりもセキュアな認証が可能
・「Google Apps」「Office 365」「Salesforce.com」「Cybozu.com」など、多くのサービスがSAMLに対応
・「ユーザー認証機能」以外にも「アクセス権限設定機能」も有している

■SAML認証連携「Google Apps」編

概要

OpenAMのSAML機能を用いて、クラウドサービス「Google Apps」でのシングルサインオン構築手順です。

検証を目的とした構築手順になっています。

解説テーマ

1 はじめに
2 目的
3 推奨環境
4 事前準備
5 環境構築の順番
6 OpenAM アイデンティティープロバイダの作成
7 リモートサービスプロバイダGoogle Appsの設
8 Google Appsのシングルサインオンの設定
9 動作確認
10 おわりに
11 付録
12 参考資料

ページリンク

→OpenAM コンソーシアム →OpenAM 技術 Tips →Vol.2 →OpenAM SAML 設定手順

■SAML認証連携「cybozu.com」編

概要

OpenAMを利用した「cybozu.com」のSAML認証連携について設定方法についてまとめられています。

解説テーマ

0.はじめに
1.cybozu.com に SP の設定をする
2.cybozu.com に連携ユーザーを追加する
3.OpenAM に連携ユーザーを追加する
4.OpenAM に IdP を登録する
5.OpenAM に SP を登録する
99.ハマりポイント
XX.まとめ

ページリンク

→Qiita →OpenAM と cybozu.com の SAML 認証を確認してみる

■SAML認証連携「AWSマネジメントコンソール」編

概要

OpenAMを使って、「AWSマネジメントコンソール(AMC)」に対してのSAML連携設定方法がまとめられています。

解説テーマ

・概要
・前提
・手順
・CoTを構成する
・ID連携を行う
・動作確認
・訂正

ページリンク

→Qiita →OpenAMを使ってAWSマネジメントコンソールにSSOする

■SAML認証連携「Office 365」編

概要

「Office 365」とのSAML連携方法についてまとめられています。

実際に設定作業を行う場合の制約/制限などについて参照できます。

解説テーマ

・Office 365 & Azure AD のドメインが違う問題
・PowerShell 必須問題
・PowerShell 経由で SAML IdP 登録
・Federated Domain は Primary にできない制約
・User の Immutable ID 61文字までしか入れられない制約
・SAML Request スカスカやのに SAML Response への制約は多い
・おわりに

ページリンク

→OAuth.jp →Office 365 と外部 SAML IdP との連携設定

OpenAM参考情報③OpenAMと「OAuth 2.0 / OpenID Connect」

OpenAM参考情報③OpenAMと「OAuth 2.0 / OpenID Connect」

「OpenAM」についての「OAuth 2.0 / OpenID Connect」に関する参考情報を紹介します。

■「OAuth 2.0」とは

・「権限の認可」を行うための標準規格
・サードパーティーアプリケーションによるHTTPサービスへの限定的なアクセスを可能にする認可フレームワーク
・「アクセス認可の判断結果をネットワーク越しに安全に伝達」することを目的としたプロトコル仕様
・「IDとパスワードを他に漏らさずに、サービスを提供したい」という着想
・「ユーザーがクライアントアプリケーションに権限を与える」処理などに使用される
・「OAuth 1.0」とは後方互換性を持たない

参考元サイト

■「OpenID Connect」とは

・「OAuth2.0」を拡張させたオープンスタンダード
・「OAuth2.0」の機能に加えて「認証結果」と「属性情報」を流通させるプロトコル
・「OpenID Connectプロバイダー」認証を利用してユーザーのIDを検証可能
・複数のサービス間で簡単/安全な認証連携が可能

参考元サイト

■参考サイト(1) OpenAMのOpenID Connectへの対応

概要

OpenAMの「OpenID Connect」への対応についてまとめられています。

解説テーマ

・OpenID Connectとは
・OpenAMのOpenID Connectへの対応
・OpenID Connect OPとしてのOpenAMの設定
・OpenID Connect RPのプロファイルの登録

ページリンク

→GitHub →k-tamura →openam-book-jp

■参考サイト(2) OpenAMをOpenID Providerにする

概要

OpenAMを「OpenID Provider」にする方法について、シンプルにまとめられています。

解説テーマ

・今日やること
・OpenID Connectってなに?
・OpenAMをOpenID Providerにする
・動作確認
・いったん〆

ページリンク

→Qiita →OpenAMをOpenID Providerにする

■参考サイト(3) 「OpenID Provider」の実装例

概要

「OpenAM」を用いた「OpenID Provider」の実装手順について、詳細に解説されています。

解説テーマ

・本記事の内容
・OpenAMのご紹介
・実装手順の解説の前に
・EC2のローンチとOpenAMのインストール
・OpenAMの初期設定
・OpenAMをOPとして設定
・OPの設定情報取得用エンドポイントの確認
・RPの登録
・認可リクエストを送信し、動作を確認する
・おわりに
・参考文献

ページリンク

→オブジェクトの広場 →第二回 OpenID Providerの実装例 ~OpenAM~

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

この記事のタグ一覧

おすすめの記事

【AIツール実験室】チャットAI対抗「添削能力」選手権🏆

AIツール実験室

2023.12.27

【AIツール実験室】チャットAI対抗「添削能力」選手権🏆

各チャットAIの「添削能力」について比較確認をしています。 「ChatGPT4と同等の添削能力を発揮した無料チャットAI」にご注目ください。 また、 ChatGPTカスタマイズ機能「GPTs」を利用して作成した GPTs文章添削機能「添削師匠さん✍️」を紹介しています。 課金勢は試しに使ってみてください。

AIツール関連 記事リストポータル

AIツール

2023.10.05

AIツール関連 記事リストポータル

AI 関連の記事をまとめたポータルページです。

【IT用語解説】「 デジタルヒューマン 」とは😊

IT用語解説

2024.01.26

【IT用語解説】「 デジタルヒューマン 」とは😊

【IT用語解説】「 デジタルヒューマン 」として、「デジタルヒューマンとは何か?」「どのようにして作成できるのか?」「私たちの世界にどのような影響を与えているのか?」などについて、まとめています。