自社のWebをSAML/シングルサインオンによる認証機能付きで構築&運用する場合の構成です。WAN側の公開用のWebサイトはもちろん、LAN側に設置の社内ローカルなWebサイトもidPのAzure ADを利用してSAML2.0認証で運用することが出来ます。Office365などとWebの認証がSSOで連携できます。
一般的な Webページ や WordPress で作成のWebサイトをAzure ADのSAML2.0/SSOで連携して運用します。またSP/Webの多重化による冗長化やマルチリージョンでの運用も可能です。
ゼロトラスト連携SAML認証対応のWebサーバー
シングルサインオンのSAML認証の場合には、ユーザーアカウントや端末管理の機能を持つ idP(アイデンティティ・プロバイダ)とその情報を利用するSP(サービス・プロバイダ)で構成され、ゼロトラスト対応のWebサーバーとして運用が出来ます。
SAML認証対応のWebアプライアンス
SAML認証対応のWebを運用できます。一般的なWebコンテンツのアップロードやWordPerssでのWebサイトの構築・運用に対応しています。
![]() |
![]() |
|
一般的なコンテンツのWebサイト | WordPressのWebサイト |
idP(アイデンティティ・プロバイダ)
idPとしてはSAMLに対応の Azure ADの他、TrustLogin、G Suite、や、CloudGate、HENNGE ONE(旧HDE ONE)、OneLogin、Okta等のIDaaSと連携が出来ます。また自社で運用のidP (OpenAM / KeyCloak)などとの連携も出来ます。
SP(サービス・プロバイダ)
今回はSPとして、ゼロトラスト連携のSAML2.0に対応したSSOのWebサーバー機能を持つ 「Powered BLUE Web for SSO/IDaaS」を利用します。
機能としては
- ゼロトラスト連携SAML2.0対応のWebサーバー機能
- Webサーバー/SP側にユーザーアカウントを作成することなく、SAML認証&グループアクセスのコントロールでの運用に対応
- インターネットサーバー機能(Mail/Web/DNS/ftp)
- WordPress / Let’s Encrypt / php 7.x 対応
- ひとり情シス対応
のオールインワンで運用出来るWebアプライアンス・サーバーです。
CentOSやRedHat に対応しており、AWS/Azure/ FUJITSU Hybrid IT Service FJcloud-O (富士通) などのクラウド環境や、VMware/Hyper-Vなどの仮想環境で運用することが出来ます。
SPにはユーザーアカウント不要
ユーザーアカウントはidP側のみに作成します。SPとなるWebサーバーには個別ユーザーのアカウントを作成することなく、SAML認証でWebへアクセスさせることが出来ます。また部門や社員、会員ごとにWebへのグループ・アクセスコントロールの設定・運用にも対応。
グループアクセスコントロール 例
- 社員や会員のみにアクセス許可
- 代理店のみにアクセスを許可
- 営業部のみにアクセスを許可
Webサーバー側にユーザーアカウントがないため、SP/Web側からアカウント漏洩の心配はありません。
SAML2.0でのネットワーク構成例
SAMLは仕様上、idPとSPの直接の通信を行わない構成が可能です(SP-initiated SAML)
ユーザーのブラウザを経由してidPとSP間の通信を行うので、ネットワークやセキュリティ面で制約がある場合でも運用が出来ます
SP(サービスプロバイダ)は任意の場所に設置&運用が出来ます(LAN内の設置でもWAN側のidPでの認証が可能)
SPとIdP/Azure ADの通信手順
1)ユーザーがブラウザでSP(Web)へアクセス
2)SPで認証要求メッセージを作成
3)ブラウザは認証要求メッセージをidPへ転送
4)idPは認証要求メッセージを受信
5)idPは認証応答メッセージを作成
6)ブラウザはidPからの応答メッセージをSPへ転送
7)SPが認証応答メッセージを受信&検証
8)ユーザーはSP上のWebサイトへログイン
LAN内に設置のWebサイト/spとidPの例
LAN側に設置のWeb・SP(サービスプロバイダ)へのアクセス認証をWAN側のidP/Azure ADで行う
ブラウザ
社内Webへのアクセスに際して、モバイル用の閉域網やVPNなどは不要です。利用者はブラウザのみで利用できます。
こんな使い方が出来ます
1)LANでの運用例 SP/社内専用のWebサーバーをLAN内に設置
- 社内用のWebサーバーをLAN内に設置
- idPはAzure ADのSAML認証を利用
- 総務部・技術部・営業部など部門ごとにWebサイトへのアクセス制限を設定
- Webサーバー上には、ユーザーアカウントは不要
2)WANでの運用例 SP/公開用のWebサーバーをWAN側に設置
- Webサイトを作成
- トップページはワールドワイドに公開
- idPはAzure ADのSAML認証を利用
- 特定のディレクトリは、社員・会員・代理店のみにアクセスを許可
- Webサーバー上には、ユーザーアカウントは不要
3)利用例
- アルバイト社員の勤怠表Webページ
- 社員向け連絡版のWebページ
- 代理店向けの製品資料の閲覧やダウンロードページ
- 会員向けの特定情報Webページ
こんなメリットがあります
- Webサーバーにアカウントがないのでサーバーのメンテナンスが簡単
- Webサーバーからのユーザーアカウント漏洩の心配は不要
- 自社のWebサイトをSAML認証でセキュアに運用
SAML/SPの設定例
http://wp-sam.mubit.jp/ 以下の指定ディレクトリにSAML2.0の認証を設定する例です
- idP
「Azure AD」
- SP
「Powered BLUE Web for SSO/IDaaS」
を利用します。
idPとSPにそれぞれ、SAML認証の設定を行います。
Web/SP側の設定
「Powered BLUE Web for SSO/IDaaS」にSPとなるWebを運用する仮想サイトを作成します
例として以下のサイトを作成します
http://wp-sam.mubit.jp/
Webサーバの有効化
Webサーバーを有効にする にチェックを入れます
仮想サイトのSSL化
SAML認証に際しては、WebサイトのSSL化が必須です。
SSLのサーバー証明書としては
- サイトのSSL自己証明
- パブリックなSSLサーバー証明書
- Let’s EncryptでのSSLサーバー証明書
に対応しています。
自己証明の場合
必要事項に記入の上 「SSLを有効にする」 にチェックを入れます
パブリックなSSLサーバー証明書の場合
必要情報を記載して「署名リクエストの作成」ボタンで作成したテキストを、SSLサーバー証明書を発行する機関へ送付します。
- 「署名リクエストの作成」でファイルを保存
- 作成された「署名リクエスト」 ファイル signig-request.txt を、公的なSSLサーバー証明書の発行機関へ送付
- 公的機関で発行された、サーバー証明書を 「インポート」 します
- 中間証明書のインポートにも対応しています
SSLサーバー証明書が発行されたら「インポート」ボタン操作でSSLサーバー証明書をインポートします
Let’s Encryptを利用の場合
サーバーのフリープラグイン機能を利用して、Let’s Encryprt プログラムをインポートします
FreeSSLを選択
インストールボタンをクリック
Let’s Encryptインストール後に 有効にする にチェックを入れます
Webサイト
作成した仮想サイトには、デフォルトでindex.htmlが自動作成されています。このindex.htmlファルを適宜変更して、Webページを作成する もしくは フリープラグインでWordPressをインストールしてWebページを作成する事も出来ます。
デフォルトのindex.html
https://wp-sam.mubit.jp/index.html
WordPressインストール
フリープラグインでWordPressを選択します。
WordPressを「インストールボタン」を押すだけで、簡単にインストール&セットアップ出来ます。
Powered BLUE 対応のWordPressのインストールパッケージは、WordPress本体のインストールやセットアップなどを簡単化しています。機能などは通常のRedHat/CentOS 対応のWordPressと同一です。
WordPressの作成
「ブログを追加する」 ボタンを押します
パスの指定
WordPressをインストールする https://wp-sam.mubit.jp サイトのパスを指定します
今回は /develop-dep を指定
https://wp-sam.mubit.jp//develop-dep にWordPressがインストールされます
「ブログをインストールする」 ボタンを押します
尚、WordPressは同一サイト内に複数のインストールが出来ます
例 「ブログの追加する」 ボタンを押して
sales-dep
support-dep
などを指定して複数のWordPressをインストール
https://wp-sam.mubit.jp/develop-dep/
https://wp-sam.mubit.jp/support-dep/
https://wp-sam.mubit.jp/sales-dep/
のディレクトリにそれぞれ、個別のWordPressがインストールされました
WordPressのアップデート
WordPressはインストール後に、最新版へアップデートも可能です。
WordPressへの各種プラグインや操作&変更などは、通常のWordPressと同様の操作や運用が出来ます。
phpの有効化
WordPressのindex.phpが動作するように、phpにチェックを入れて有効にします
SAML2.0設定
SAMLのエンドポイントを指定します 例 / (環境に合わせて適宜、変更)
idP側のxmlのメタデータをインポートします
idP側で作成のメタデータ(xml)をアップロードします
SAML2.0の認証をかけたいdirを設定します
例
- /develop-dep
- /sales-dep
- /support-dep
SAML認証のディレクトリ
https://wp-sam.mubit.jp/develop-dep/
https://wp-sam.mubit.jp/sales-dep/
https://wp-sam.mubit.jp/support-dep/
この3つのURLには、idP側のSAML認証が設定されていないとアクセスができません。なおSPとなるWebサーバー側には、ユーザーアカウントは不要です。
グループアクセスでのコントロールが不要の場合には、SP側はここまでの設定で運用出来ます。
attributeの指定
グループでのWebへのアクセスコントロールを行なう場合に、attributeなどを設定します
それぞれのパスに対して、idP側で設定の attribute-value もしくは ロール の指定が出来ます
SP側で attribute=”groups” value= ”mbt” というattribute value でのアクセスを許可の場合の設定例
SAMLの有効化
設定のサイトのSAMLを有効にします
idP/Azure ADの設定
IDaaSでSAML2.0をサポートしていれば、Powered BLUE Web for SSO/IDaaSと接続が出来ます。今回はidPとしてMicrosoft社のAzure ADを利用します。
Azure ADの設定例
自社のWebサイトをAzure ADでSAML認証させます
Azure AD の前提条件
- Azure AD Premium
エンタープライズ アプリケーションブレード
自社独自のSAMLベースWebを登録の場合には、 [エンタープライズ アプリケーション] ブレードを使用して、アプリケーションを Microsoft ID プラットフォームに接続します。
- お使いの Microsoft ID プラットフォーム管理者アカウントを使用して、Azure Active Directory ポータルにサインインします。
- Azure Active Directory を選択
- [エンタープライズ アプリケーション] > [新しいアプリケーション] の順に選択します。
- (省略可能だが推奨) [ギャラリーから追加する] 検索ボックスに、アプリケーションの表示名を入力します。 検索結果にアプリケーションが表示されたら、それを選択し、この手順の残りをスキップします。
- [ギャラリー以外のアプリケーション] を選択します。 [独自のアプリケーションの追加] ページが表示されます。
- 新しいアプリケーションの表示名を入力します。
- [追加] を選択します。
この方法でアプリケーションを追加することにより、事前に統合されたアプリケーションに似たエクスペリエンスを提供します。 まず、アプリケーションのサイドバーから、 [シングル サインオン] を選択します。 次の画面 ( [シングル サインオン方式の選択] ) は、SSO を構成するためのオプションを示しています。
SAMLを選択
① 基本的なSAML構成を選択
idp側のxmlを読み込み
メタデータファイルをクリック
idPに読み込むメタデータファイルの指定(SP側のxmlファイル)
もしくは、以下の項目をxmlの内容に沿って記述します
Azure AD SAML の設定例
SAMLの項目
SP側のxmlの内容に従って、以下の項目を設定します。SP側のxmlファイルのアップロードでの登録も出来ます。
エンティティID
https://他wp-sam.mubit.jp/endpoint/metadata
応答URL (Assertion Consumer Service URL )
https://wp-sam.mubit.jp/endpoint/postResponse
サインオンURL
https://twp-sam.mubit.jp/develop-dep/
リレー状態
空欄でも可能
ログアウトURL
空欄でも可能
② ユーザー属性とクレーム
必要に応じて設定
③ SAML署名
idP/Azure AD側のフェデレーションメタデータ(XML)をダウンロードして、SP側に登録します
グループアクセスコントロールが不要の場合には、ここまでの設定となります
Validate
idPおよびSP側の設定が正しければ、「Validate] ボタンをクリックすると SP側のWebページが表示されます。
例 現在のユーザーとしてサインイン
エラーが表示される場合には、メッセージをコピーします
エラーが表示される場合には、メッセージをクリップボードに貼り付けると修正方法が、サジェスチョンされます
エラーを適宜修正して、正常にアクセス出来ればセットアップは終了です。
SAMLアプリケーションにユーザーとグループのアサイン
作成したSAMLアプリケーションを利用出来る、ユーザーやグループを割り当てます
- アプリケーションのサイドバーで、 [ユーザーとグループ] を選択します。 [<アプリケーション名> – ユーザーとグループ] ページが表示され、割り当てられたユーザーとグループの現在の一覧が示されます。
- [ユーザーの追加] を選択します。 [割り当ての追加] ページが表示されます。
- [ユーザーとグループ] (選択した <数>) を選択します。 [ユーザーとグループ] ページが表示され、使用可能なユーザーとグループの一覧が示されます。
- 一覧から割り当てるユーザーまたはグループを入力するか、スクロールして見つけます。
- 追加する各ユーザーまたはグループを選択し、 [選択] ボタンを選択します。 [ユーザーとグループ] ページは表示されなくなります。
- [割り当ての追加] ページで [割り当て] を選択します。 [ – ユーザーとグループ] ページが表示され、追加ユーザーが一覧に示されます。
アクセス
https://wp-sam.mubit.jp/develop-dep/
初回
シングルサインオンでは、一度 idP/Azure AD へのログイン
ターゲットのwebページ
SAML認証を設定のターゲットのWebページが表示されます
多要素認証
idP側のAzure ADの認証とは別に、「Powered BLUE Web for SSO / IDaaS」のSP上で独自に
- SSLクライアント認証
- ワンタイムパスワード認証
を設定して運用する事が出来ます
社内Webサイトへのアクセスに際して、IDaaS側の認証に加えて自社で運用出来るWebに自社のポリシーに準じた認証を設定したい場合には有効です。
SSLクライアント認証
SP上でPrivate CAを運用 SSLクライアント証明書を発行してSSLクライアント認証によるアクセスコントロールが出来ます。
OTP/ワンタイムパスワード認証
SP/Webの冗長構成
Webサーバーを2重化して、シングルサインオン/SAML認証でWebアクセスを分散させる冗長構成にも対応しています。
HA構成
ロードバランサーでの負荷分散
マルチAZでの運用構成
GSLBやRoute53などを利用してのマルチAZでの運用に対応
異なるアベイラビリティゾーン(AZ)での運用により耐障害性の向上
- リージョンA / 東日本データセンター
- リージョンB / 西日本データセンター
idPの費用を抑えたい場合
IdPの費用を抑えてWebサイトをSAML認証で運用したい場合には、Azure ADと同様の機能を持ち、idPの基本機能は無料で利用出来るGMOグローバルサイン社のIDaaSサービス「TrustLogin」を使うことも出来ます。
自社Web/WordPressをSAML/SSO認証で構築(TrustLogin編)
既存の社内Webへアクセスの場合
Azure ADを利用して、SAML認証に対応のリバースプロキシ経由で社内Webへアクセスさせることができます
Azure ADを利用 / SAML認証のリバースプロキシで社内Webへアクセス / テレワーク対応
終わりに
デモ環境で試してみたい方や詳しい話を聞いてみたい方などは、ムービットの お問い合わせフォーム からご連絡ください。