Identity Managerコンポーネントは、要件に基づいてプライベートネットワークまたはパブリックネットワークに展開できます。図 14-1, AWS EC2でのIdentity Managerの展開は、以降のセクションで使用されるサンプル展開を示しています。
図 14-1 AWS EC2でのIdentity Managerの展開
Identity Managerコンポーネントは、複数のコンポーネントが異なるサーバにどのように分散されるかに応じて、さまざまな組み合わせで展開することができます。ただし、展開手順はすべてのシナリオで同じです。
展開手順は、次の手順で構成されます。
このセクションでは、Identity Managerで使用するAWS VPCをセットアップする一般的な手順の概要を説明します。詳細については、『Amazon Elastic Compute Cloud Documentation』を参照してください。
以下の手順を実行して、AWS VPCサービスを作成します。
AWS管理コンソールにログインします。
サービスをクリックして、以下のサービスを作成します。
サービス |
手順 |
---|---|
VPC |
詳細については、『Amazon Virtual Private Cloud Documentation』を参照してください。 |
重要:VPCウィザードの開始を使用してVPCを作成すると、VPCのサブネット、インターネットゲートウェイ、およびルートテーブルが作成されます。これらの項目を次のように表示または編集できます。 |
|
サブネット |
図 14-1に示すようにIdentity Managerコンポーネントを展開するには、VPCに3つのサブネットを作成します。たとえば、privateSN、publicSN1、およびpublicSN2を作成します。 サブネットを作成するには、次の手順に従います。
これらの手順を繰り返して、追加のサブネットを作成します。 |
インターネットゲートウェイ |
|
ルートテーブル |
|
(オプション)ホストゾーン |
登録済みのドメインがある場合は、そのドメインを使用して、以下のアクションを実行して、Identity Managerコンポーネントをホストすることができます。
|
Elastic IPアドレス |
|
このセクションでは、Identity Managerの基本セットアップのインスタンスを作成および展開する手順の概要を説明します。これには、Identity Managerエンジン、iManager、Identity Applications、Reporting、ユーザアプリケーションデータベース、およびReportingデータベースが含まれます。
以下の手順を実行して、Identity Managerコンポーネントのインスタンスを作成します。
サービス > EC2をクリックします。
Launch Instance (インスタンスの起動)をクリックします。
SLES 12 SPxまたはRHEL 7.xイメージを選択します。
基本オペレーティングシステムおよびIdentity Managerコンポーネントの展開の要件を満たすインスタンスタイプを選択します。「システム要件」を参照してください。
Next: Configure Instance Details (次へ: インスタンスの詳細を設定する)をクリックします。
インスタンスが正しいVPCとサブネットを使用していることを確認してください。このページには、サブネット設定が自動入力されます。
フィールド |
アクション |
---|---|
Auto-assign Public IP |
パブリックの場合、Enableに設定します。この設定により、サブネット設定が自動的に入力されます。プライベートサブネットの場合、この値をDisableに設定します。 |
Next: Add Storage (次の手順: ストレージの追加)をクリックします。
デフォルトのストレージサイズは10GBです。要件に応じてストレージサイズを変更します。「システム要件」を参照してください。
Next: Add Tags (次の手順: タグの追加)をクリックします。
必要に応じてタグを追加します。タグを使用すると、インスタンスを整理できます。たとえば、各インスタンスに次の2つのタグを追加できます。
インスタンスが何に使用されているかを示すタグ
このマシンの所有者を示すタグ
Next: Configure Security Group (次へ: セキュリティグループの設定)をクリックします。
セキュリティグループは、インスタンスのグループの仮想ファイアウォールルールです。同じファイアウォール要件を持つインスタンスのグループごとに個別のセキュリティグループを作成することをお勧めします。
たとえば、Identity Managerエンジンのすべてのノードに1つのセキュリティグループ、Identity Applicationsのすべてのノードに1つのセキュリティグループ、Identity Reportingのすべてのノードに1つのセキュリティグループを設定することができます。デフォルトでは、新しいセキュリティグループはポート22の着信トラフィックのみを許可するため、SSHを使用してのみインスタンスに接続できます。
詳細については、「Amazon EC2 Security Groups for Linux Instances」を参照してください。
新しいセキュリティグループを作成します。そのセキュリティグループに名前と説明を指定します。
以下のIdentity Managerコンポーネントをインストールする前に、追加のポートルールを追加します。
コンポーネント |
ポート |
説明 |
---|---|---|
識別ボールト用のLDAP |
TCP 636 |
セキュアなLDAPの通信に必要。 |
iManager |
TCP 8443 |
HTTPS通信でiManagerにアクセスするために必要。 |
識別情報アプリケーション |
TCP 8543 |
HTTPS通信でIdentity Applicationsにアクセスするために必要。 |
Identity Reporting |
TCP 8643 |
HTTPS通信でIdentity Reportingにアクセスするために必要。 |
PostgreSQLデータベース |
TCP 5432 |
セキュアなデータベース通信でPostgreSQLにアクセスするために必要。 |
Review and Launch (レビューと起動)をクリックします。
詳細を確認したら、起動をクリックします。
既存のキーペアを選択するか、新しいキーペアを作成します。
このキーペアは、インスタンスへのSSHアクセスに使用されます。複数のマシンで同じキーペアを使用できます。
Download Key Pair (キーペアのダウンロード)をクリックします。
重要:秘密キーを使用してのみ、インスタンスに接続して管理できます。したがって、秘密キーをダウンロードした後に失くさないでください。
インスタンスの初期化時に作成されるElastic IPアドレスをアタッチします。
インスタンスを起動し、ソフトウェアリポジトリを確認します。設定されたソフトウェアリポジトリを確認するには、以下の手順を実行します。
キーペアを使用してインスタンスにログインします。
rootユーザに切り替えます。
ご使用のオペレーティングシステムで以下の更新が利用可能であることを確認します。
SLES上のSLES12-SP3-Pool and SLES12-SP3-Updates: 確認するには、zypper lr –nコマンドを実行します。
RHEL上のrhui-REGION-rhel-server-releases/7Server/x86_64: 確認するには、yum repolistコマンドを実行します。
メモ:オペレーティングシステムにリポジトリが存在しない場合、設定されたElastic IPアドレスがインスタンスにアタッチされていることを確認してから、インスタンスを再起動します。
オペレーティングシステムに以下の前提条件をインストールします。
zypperコマンドを使用してglibc-32bitライブラリをインストールします。
yum installコマンドを使用して以下の前提条件をインストールします。
unzip
ksh
bc
glibc-*.i686
libXau-1.0.8-2.1.el7.i686
libxcb.i686
libX11.i686
libXtst.i686
libXrender.i686
libgcc.i686
lsof
Identity Managerエンジンの場合、prerequisite.shスクリプトを編集して、compat-libstdc++-33.x86_64の出現を削除できます。このパッケージは、Identity Managerのインストールには必要なくなりました。
/etc/hostsおよびhostnameを設定します。
インスタンスのプライベートIPアドレスを使用して、ファイアウォール内のIdentity Managerサーバを保護します。
インスタンスにDNS名を割り当て、hostsファイルを更新します。
次に例を示します。
# 10.0.0.1 identityEngine.example.com identityEngine
hostnameおよびdomain nameを設定します。
yast lan
hostnamectl set-hostname idmengine.example.com
(状況によって実行)暗号化されたElastic Block Store (EBS)ボリュームを作成して、クラウド内のデータを暗号化します。
サービス > EC2をクリックします。
Elastic Block Storeで、Volumes (ボリューム)を選択し、Create Volume (ボリュームの作成)をクリックします。
ボリュームに必要なサイズを指定します。
Encrypt this volume (このボリュームを暗号化する)を選択し、Create Volume (ボリュームの作成)をクリックします。
リストで新しく作成されたボリュームを選択します。
アクションで、ボリュームのアタッチをクリックして、EC2インスタンスにボリュームをアタッチします。
これらの手順をインスタンスごとに繰り返します。
EBSの詳細については、「Amazon EBS」を参照してください。
オペレーティングシステムのツールを使用して、ボリュームをフォーマットし、パーティションをマウントします。
yast diskコマンドを実行して、ボリュームをフォーマットします。
mkfsを実行してフォーマットし、/etc/fstabに追加します。詳細については、『Red Hat Enterprise Linux Deployment Guide』を参照してください。
メモ:
Identity Managerエンジンデータパーティションをマウントします。デフォルトでは、データパーティションは/var/opt/novell/です。
他のIdentity Managerコンポーネントを/opt/netiq/にマウントします。
すべてのマシンのIPアドレスへのDNSですべてのインスタンスの/etc/hostsファイルを更新します。
Identity Managerコンポーネントをインストールする前に、以下の手順を実行します。
Identity ManagerコンポーネントをインストールするインスタンスにIdentity_Manager_4.8_Linux.isoをダウンロードします。
ダウンロード済みの.isoファイルをマウントします。
(状況によって実行) Identity ApplicationsとIdentity Reportingのデータベースを作成します。詳細については、Identity ApplicationsおよびIdentity Reporting用のデータベースの設定を参照してください。
.isoファイルのルートディレクトリから、./install.shコマンドを実行します。
使用許諾契約書を読み、「y」と入力して使用許諾契約に同意します。
カスタムインストールオプションを選択し、インスタンスにインストールするコンポーネントを選択します。コンポーネントを設定します。詳細については、表 5-2, カスタム環境設定を参照してください。
Identity ReportingおよびIdentity Applicationsでconfigupdate.shを実行して、すべてのクライアントを設定します。
Identity ApplicationsおよびIdentity Reporting用のPostgreSQLXデータベースを外部サーバにインストールする場合は、インストールする前に次の手順を実行する必要があります。
Identity_Manager_4.8_Linux.isoをマウントした場所に移動します。
/common/packages/postgres/ディレクトリを見つけて、PostgreSQLをインストールします。
rpm -ivh netiq-postgresql-9.6.6-0.noarch.rpm
次のコマンドを実行して、グループをpostgresユーザに関連付けます。
/usr/sbin/usermod -a -G postgres postgres
/etc/passwdファイルにあるpostgresユーザのホームディレクトリパスを/opt/netiq/idm/postgres/に変更します。
/etc/ディレクトリに移動します。
passwdファイルを編集します。
vi /etc/passwd
postgresユーザのホームディレクトリを/opt/netiq/idm/postgres/に変更します。
postgresユーザとしてログインします。
次に例を示します。
su - postgres
PostgreSQLのインストール場所にdataディレクトリを作成します。
mkdir -p <POSTGRES_HOME>/data。ここで、<POSTGRES_HOME>は/opt/netiq/idm/postgresです
次に例を示します。
mkdir -p /opt/netiq/idm/postgres/data
PostgreSQL homeディレクトリをエクスポートします
export PGHOME=<postgresホームディレクトリパス>
次に例を示します。
export PG_HOME=/opt/netiq/idm/postgres
PostgreSQパスワードをエクスポートします。
export PGPASSWORD=<enter the database password>
データベースを初期化します。
"LANG=en_US.UTF-8 <POSTGRES_HOME>/bin/initdb -D <POSTGRES_HOME>/data"
次に例を示します。
"LANG=en_US.UTF-8 /opt/netiq/idm/postgres/bin/initdb -D /opt/netiq/idm/postgres/data"
/opt/netiq/idm/postgres/ディレクトリに以下のコンポーネントのデータベースを作成します。
$ createdb idmuserappdb $ psql -s idmuserappdb # create user idmadmin password 'somepassword'; # GRANT ALL PRIVILEGES ON DATABASE idmuserappdb TO idmadmin; # ALTER DATABASE idmuserappdb OWNER TO idmadmin;
$ createdb idmrptdb
postgresユーザとしてログアウトします。
PostgreSQLインスタンスがlocalhost以外のネットワークインスタンスでリスンできるように、postgresql.confファイルを変更します。
/opt/netiq/idm/postgres/data/ディレクトリに移動します。
postgresql.confファイルを編集します。
vi postgresql.conf
ファイルに次の行を追加します。
listen_addresses = '*'
<postgresホームディレクトリパス>/dataの下にpg_logディレクトリを作成します。
次に例を示します。
mkdir -p /opt/netiq/idm/postgres/data/pg_log
pg_logディレクトリの許可を変更します。
chown -R postgres:postgres <postgresディレクトリパス>/data/pg_log
次に例を示します。
chown -R postgres:postgres /opt/netiq/idm/postgres/data/pg_log
PostgreSQLサービスを開始します。
systemctl start netiq-postgresql
これにより、新しいPostgreSQLサービスが開始されます。
Designerを使用するには、WindowsマシンにDesignerをインストールする必要があります。
パブリックサブネットで、サポートされているWindowsインスタンスを起動します。
Windowsセキュリティグループの場合、rdesktopポートのみを使用します。たとえば、3389と指定します。
WindowsインスタンスにDesignerをインストールします。詳細については、『NetIQ Identity Managerセットアップガイド(Windows用)』の「Designerのインストール」を参照してください。
ロードバランサを作成して、Identity Managerコンポーネント間で着信要求の負荷のバランスを取ることができます。ロードバランサを使用して、Identity Managerサーバをパブリックアクセスから保護することができます。
以下の手順では、サンプル展開シナリオ用にロードバランサを設定するために必要な設定の詳細について説明します。
ロードバランサではこの証明書を使用して、Identity Managerコンポーネント間のセキュア通信を確立します。以下の3つの方法でロードバランサの証明書を作成できます。
サービス > Certificates Manager (証明書マネージャ)をクリックします。
Request Certificate (証明書の要求)をクリックします。
証明書を作成するDNS名を指定します。
DNS権限を確認します。
サービス > Certificates Manager (証明書マネージャ)をクリックします。
証明書のインポートをクリックします。
証明書の詳細を指定します。
サービスをクリックします。
Security, Identity & Compliance (セキュリティ、アイデンティティ&コンプライアンス)で、IAMをクリックします。
IAM APIを使用して証明書の詳細を指定します。詳細については、「Uploading Server Certificate Using IAM API」を参照してください。
ターゲットグループは、ロードバランサを、負荷が分散されるインスタンス(ターゲット)のIPアドレスに関連付ける方法を提供します。
ターゲットグループを作成するには、次の手順に従います。
EC2ダッシュボードで、ロードバランシングのターゲットグループをクリックします。
ターゲットグループの作成をクリックします。
次の詳細を指定します。
フィールド |
説明 |
---|---|
ターゲットグループ名 |
ターゲットグループの名前を指定します。 このターゲットグループを設定するコンポーネントの名前を指定できます。たとえば、Identity Applications、Identity Reporting、またはiManagerを指定します。 |
プロトコル |
HTTPSを選択します。 |
ポート |
サーバがリスンするように設定されているポートを指定します。 以下は、さまざまなIdentity Managerコンポーネントに使用されるポート値の例です。
|
ターゲットタイプ |
インスタンスを選択します。 |
VPC |
Identity Managerコンポーネントのインスタンスに選択したものと同じVPCを選択します。 |
ヘルスチェック設定 |
|
プロトコル |
HTTPSを選択します。 ロードバランサは、ヘルスチェックの実行中にこのプロトコルを使用します。 |
パス |
ヘルスチェックの送信先を指定します。 ヘルスチェックを実行するためのIdentity Managerコンポーネントのデフォルトパスは次のとおりです。
|
ヘルスチェックの詳細設定 |
デフォルト値のままにします。 |
作成をクリックします。
セッションの持続性を有効にします。
作成したターゲットグループを選択します。
説明タブで、Edit attributes (属性の編集)をクリックします。
Stickiness (持続性)に対してEnable (有効化)を選択します。
これらの手順を繰り返して、各アプリケーションのターゲットグループを作成します。
メモ:SSPRが別のサーバにインストールされている場合は、このコンポーネント用に別個のターゲットグループを作成してください。
ロードバランサを作成するには、次の手順に従います。
左側のメニューで、ロードバランサをクリックします。
ロードバランサの作成をクリックします。
Application Load Balancerで作成をクリックします。
次の詳細を指定します。
フィールド |
説明 |
---|---|
名前 |
ロードバランサの名前を指定します。 |
スキーム |
internet-facingを選択します。 |
リスナー |
ロードバランサにリスナーを追加するには、リスナーの追加をクリックします。 以下のようにリスナーポートを指定します。 iManagerの場合:
Identity Applicationsの場合:
Identity Reportingの場合:
|
アベイラビリティゾーン |
|
タグ |
(オプション) タグを追加して、ロードバランサを識別することができます。 |
Next: Configure Security Settings (次へ: セキュリティの設定)をクリックします。
HTTPSプロトコルを使用するように証明書の詳細を指定します。次のいずれかを実行できます。
セキュア通信を使用するためにロードバランサの証明書を作成するで作成した証明書タイプを選択します。
証明書をIAMまたはACMにアップロードします - 証明書の詳細を指定します。
Next: Configure Security Groups (次へ: セキュリティグループの設定)をクリックします。
セキュリティグループの割り当てで、新しいセキュリティグループを作成するを選択します。
(オプション) ロードバランサの名前と説明を指定します。
設定されたリスナーにトラフィックをルーティングするセキュリティグループにルールを追加します。
フィールド |
説明 |
---|---|
タイプ |
カスタムTCPルールを選択します。 |
プロトコル |
ルールに使用されるプロトコルタイプが表示されます。 |
ポート範囲 |
Identity Managerコンポーネントのポート範囲を選択します。
|
ソース |
Identity Managerコンポーネントが展開されているインスタンスに接続するには、任意の場所を選択します。 |
Next: Configure Routing (次へ: ルーティングの設定)をクリックします。
ターゲットグループで、以下の詳細を指定します。
フィールド |
説明 |
---|---|
ターゲットグループ |
既存のターゲットグループを選択します。このリストには、ターゲットグループの作成でIdentity Managerコンポーネント用に作成されたターゲットグループが表示されます。 |
名前 |
リストからターゲットグループを選択します。 ここで選択できるターゲットグループは1つだけです。たとえば、Identity Applications用に作成したターゲットグループを選択します。 ロードバランサを作成したら、HTTPSプロトコル用に設定されたターゲットグループを使用するように、リスナーポート8443を変更する必要があります。このセクションのステップ 18を参照してください。 |
プロトコル |
指定されたターゲットグループで設定した値が入力されます。値が正しくリストされていることを確認してください。 |
ポート |
指定されたターゲットグループで設定した値が入力されます。値が正しくリストされていることを確認してください。 |
ターゲットタイプ |
指定されたターゲットグループで設定した値が入力されます。正しい値がリストされていることを確認してください。 |
ヘルスチェックで、以下の詳細を確認します。
フィールド |
説明 |
---|---|
プロトコル |
ステップ 12で選択したターゲットグループの設定に基づいて、HTTPSまたはHTTPが入力されます。 ターゲットグループの作成を参照してください。 |
パス |
ステップ 12で選択されたターゲットグループで設定したヘルスURLが入力されます。 ターゲットグループの作成を参照してください。 |
ヘルスチェックの詳細設定 |
デフォルト値のままにします。 |
Next: Register Targets (次へ: ターゲットの登録)をクリックします。
選択されたターゲットグループに登録されているすべてのターゲットのリスト。このリストは、ロードバランサを作成した後にのみ変更できます。
Next: Review (次へ: 確認)をクリックします。
ロードバランサの詳細が正しいことを確認します。
作成をクリックし、閉じるをクリックします。
(状況によって実行) Identity Managerコンポーネントのリスナーポートの作成をスキップした場合、または新しいリスナーポートを追加する場合は、適切なターゲットグループを使用するようにリスナーポートを更新します。
作成したロードバランサを選択します。
リスナータブを選択します。
リスナーの追加をクリックして、各リスナーに必要な詳細を指定します。ステップ 4を参照してください。
ロードバランサに使用される証明書を選択します。セキュア通信を使用するためにロードバランサの証明書を作成するを参照してください。
作成をクリックします。
SSPRが別のマシンで設定されている場合、リスナーを追加する必要がある場合があります。
重要:分散セットアップで単一のロードバランサを使用するには、別のDNSエイリアスレコードを作成して、セットアップ内のサーバを区別します。それ以外の場合は、Webアプリケーションごとに個別のロードバランサを作成します。
登録済みのサイトがある場合は、そのサイトを使用して、Identity Managerコンポーネントごとに個別のレコードセットを作成できます。
サービス > Route 53をクリックします。
左側のメニューでホストゾーンをクリックし、AWS EC2サービスの設定中に作成されるホストゾーンを選択します。AWS仮想プライベートクラウドの準備を参照してください。
レコードセットに移動をクリックします。
レコードセットの作成をクリックします。
フィールド |
説明 |
---|---|
名前 |
レコードセットに意味のある名前を指定します。 たとえば、Identity Applicationsレコードセットの名前をrbpmと指定します。 |
タイプ |
A – IPv4アドレスを選択します。 |
別名 |
はいを選択します。 |
エイリアスターゲット |
Identity Managerコンポーネントを接続するように設定されたロードバランサを選択します。 |
ルーティングポリシー |
Simple (シンプル)を選択します。 |
作成をクリックします。
Identity Applications、Identity Reporting、およびOSPインスタンスでconfigupdate.shを実行し、パブリックDNS名を使用してSSO設定を更新します。
Tomcatを再起動します。
パブリックDNSを使用してアプリケーションにアクセスして、設定を確認します。
https://<public-DNS-name>:<port>/<application-context-name>
ロードバランサのパブリックDNS名またはエイリアスDNSレコードセットを使用して、Identity Managerインスタンスにアクセスするとができます。Identity Managerインスタンスが相互に通信できるようにするには、各インスタンスの/etc/hostsファイルを編集し、そのホスト名をプライベートIPアドレスに解決するエントリを追加します。
以下のインスタンスを更新して、他のインスタンスに内部的にアクセスします。
インスタンス |
説明 |
---|---|
OSP |
OSPインスタンスには、パスワードをリセットするためにSSPRインスタンスへのアクセスが必要です。 ホストファイルの場所: /etc/hosts 次のエントリでhostsファイルを変更します。 <IP_address> <Private_DNS_Name> <Public_DNS_Name> 次に例を示します。 10.0.1.5 sspr.privatedns.local sspr.publicdns.com |
識別情報アプリケーション |
Identity Applicationsインスタンスでは、ログインのためにOSPインスタンスへのアクセスが必要です。 ホストファイルの場所: /etc/hosts 次のエントリでhostsファイルを変更します。 <IP_address> <Private_DNS_Name> <Public_DNS_Name> 次に例を示します。 10.0.1.6 osp.privatedns.local osp.publicdns.com |
Identity Reporting |
Identity Reportingインスタンスでは、ログインのためにOSPインスタンスへのアクセスが必要です。 ホストファイルの場所: /etc/hosts 次のエントリでhostsファイルを変更します。 <IP_address> <Private_DNS_Name> <Public_DNS_Name> 次に例を示します。 10.0.1.6 osp.privatedns.local osp.publicdns.comm |