Caché セキュリティの準備
Caché セキュリティの準備
このセクションの内容は、Caché のセキュリティ機能を使用するユーザを対象としています。これらの機能 (特に認証オプションおよび承認オプション) の概要については、"Caché セキュリティ管理ガイド" の “はじめに” を参照してください。この資料は、サイトに適したセキュリティ・レベルを選択するために役立ちます。このセキュリティ・レベルによって、Caché のインストール前にセキュリティ環境を準備するために必要なタスクが決まります。
このセクションでは、以下のトピックについて説明します。
-
Kerberos を使用したセキュリティ環境の準備 — 現在の環境で Kerberos 認証方式を使用していない場合は、このセクションを省略できます。
-
初期の Caché セキュリティ設定 — このセクションでは、各種既定のセキュリティ設定の特徴について説明します。特に、通常またはロック・ダウンの Caché セキュリティを使用する場合に役立ちます。
このドキュメントで説明する環境よりさらに複雑なセキュリティ環境を使用する場合、具体的な設定方法については、インターシステムズのサポート窓口Opens in a new tabまでお問い合わせください。
Kerberos を使用したセキュリティ環境の準備
以下の各セクションでは、3 種類の環境についてインストールの準備方法を説明します。
-
Windows のみで構成された環境
この構成では、Caché サーバとクライアントを Windows マシン上で実行し、Windows ドメイン・コントローラを使用して KDC 機能を実現します。ドメイン管理者は、Caché サーバ上で Caché サービスを実行するためのドメイン・アカウントを作成します。
Windows Caché サーバを使用する際の要件については、"Windows ドメイン・コントローラを使用するための Windows Caché サーバのサービス・アカウントの作成" のセクションを参照してください。システムで使用するアプリケーションによっては、"Windows Kerberos クライアントの構成" セクションに記載されている手順も実行する必要があります。
-
Windows ドメイン・コントローラを使用する混合環境
この構成では、Windows マシンおよび非 Windows マシンの混在する環境で Caché サーバとクライアントを実行し、Windows ドメイン・コントローラで管理します。Windows および非 Windows の Cache サーバを使用する場合の要件については、以下のセクションを参照してください。
-
システムで使用するアプリケーションによっては、"Windows Kerberos クライアントの構成" セクションに記載されている手順も実行する必要があります。
-
非 Windows 環境
この構成では、Caché サーバとクライアントのすべてを非 Windows マシン上で実行し、UNIX® または Kerberos の KDC を実現します。UNIX® または macOS KDC と Caché サーバを使用するための要件については、以下の 2 つのセクションを参照してください。
Caché 対応のすべてのプラットフォームには、ベンダが提供およびサポートしているいずれかのバージョンの Kerberos が備わっています。詳細は、各オペレーティング・システムのドキュメントを参照してください。Kerberos を使用する場合は、Kerberos KDC (Key Distribution Center) または Windows ドメイン・コントローラがネットワークに接続されている必要があります。KDC と、ドメイン・コントローラ上で動作するその他のセキュリティ・サービスを統合することによって、Kerberos 認証プロトコルを実装します。
このドキュメントでは、以下の関連する個別のエンティティについて言及します。
-
サービス・アカウント — オペレーティング・システム (Window など) 内のエンティティ。ソフトウェア・アプリケーションまたはサービスを表します。
-
サービス・プリンシパル — Kerberos のエンティティ。ソフトウェア・アプリケーションまたはサービスを表します。
Windows ドメイン・コントローラでの Windows Caché サーバのサービス・アカウントの作成
Caché を Windows ドメインにインストールする前に、Windows ドメイン管理者は、Windows ドメイン・コントローラを使用する Windows マシン上の各 Caché サーバ・インスタンスに対してサービス・アカウントを作成する必要があります。
アカウントの特性
Windows ドメイン・コントローラにこのアカウントを作成する場合は、次のように設定します。
-
アカウントの [パスワードを無期限にする] プロパティを設定します。
-
作成したアカウントを、Caché サーバ・マシン上の Administrators グループのメンバにします。
-
このアカウントを [サービスとしてログオン] ポリシーに追加します。
ドメイン全体のポリシーが有効な場合、正常に Caché を機能させるには、このサービス・アカウントをポリシーに追加する必要があります。
名前および名前付け規約
クライアントとサーバが排他的に Windows 上に存在する環境でサービス・プリンシパルに名前を付ける方法には次の 2 種類があります。
-
標準の Kerberos 名前付け規約に従います。これにより、Windows 以外のシステムとの将来的な互換性が保証されます。
-
任意の一意の文字列を使用します。
以下の各セクションで説明するように、名前の作成方法の選択によって、サーバへの接続を設定するための手順は多少異なります。
Kerberos 規約に従った名前では、以下の手順に従います。
-
Windows の setspn コマンドを実行し、service_principal/fully_qualified_domain_name の形式でサービス・プリンシパルの名前を指定します。service_principal には、通常 cache を指定し、fully_qualified_domain_name には、マシン名をドメイン付きで指定します。例えば、cache/cacheserver.example.com のようにサービス・プリンシパル名を指定します。setspn ツールの詳細は、Microsoft TechNet Web サイトの "Setspn SyntaxOpens in a new tab" のページを参照してください。
-
[Caché サーバ・マネージャ] ダイアログで、新しい優先サーバを追加するために [Kerberos] を選択します。[サービスプリンシパル名] フィールドに指定する名前は setspn で指定したプリンシパル名と一致する必要があります。
リモート・サーバ接続の設定の詳細は、"Caché システム管理ガイド" の “リモート・サーバへの接続” の章を参照してください。
任意の一意の文字列を使った名前では、以下の手順に従います。
-
サービス・プリンシパルの名前を選択します。
-
[Caché サーバ・マネージャ] ダイアログで、新しい優先サーバを追加するために [Kerberos] を選択します。[サービスプリンシパル名] フィールドに、サービス・プリンシパルに対して選択した名前を指定します。
Kerberos 規約に従わないと決めた場合、Caché サーバ・インスタンスを表す各アカウントについて推奨される名前付け規約は “cacheHOST” の形式で、リテラル cache に続けてホスト・コンピュータ名を大文字で指定します。例えば、WINSRVR という Windows マシン上で Caché サーバを実行する場合、ドメイン・アカウント名は cacheWINSRVR となります。
リモート・サーバ接続の設定の詳細は、"Caché システム管理ガイド" の “リモート・サーバへの接続” の章を参照してください。
Windows ドメイン・コントローラでの非 Windows Caché サーバのサービス・アカウントの作成
Caché を Windows ドメインにインストールする前に、Windows ドメイン・コントローラを使用するためのサービス・アカウントを非 Windows マシン上の各 Caché サーバに対して作成する必要があります。そのマシン上に存在する Caché サーバ・インスタンスの数にかかわらず、マシンごとにサービス・アカウントを 1 つ作成してください。
通常、これらのアカウントには “cacheHOST” という名前を付けます。cache という文字列の後に、ホスト・コンピュータ名を大文字で指定してください。例えば、UNIXSRVR という非 Windows マシン上で Caché サーバを実行する場合、ドメイン・アカウント名は cacheUNIXSRVR となります。非 Windows プラットフォーム上の Caché サーバの場合、このアカウントが Kerberos サービス・プリンシパルにマップされます。
Windows ドメイン・コントローラでこのアカウントを作成する際、Caché では、そのアカウントに [パスワードを無期限にする] のプロパティを設定する必要があります。
Windows ドメインで非 Windows Caché サーバを設定するには、Windows ドメインから keytab ファイルを取得する必要があります。keytab ファイルは、Caché サーバのサーバ名とそのキーが格納されているファイルです。
そのためには、Windows サービス・アカウント (この例では cacheUNIXSRVR) をCaché サーバ上のサービス・プリンシパルにマップし、ドメイン・コントローラで ktpass コマンドライン・ツールを使用して、アカウントからキーを取得します。これは、Windows サポート・ツールの 1 つとして Microsoft が提供しています。
このコマンドを実行すると、設定したアカウントが UNIX®/Linux マシン上のアカウントにマップされます。さらに、そのアカウントのキーも生成されます。このコマンドでは以下のパラメータを指定する必要があります。
Parameter (パラメータ) | 概要 |
---|---|
-princ | cache/<fully qualified hostname>@<kerberos realm> の形式で表されたプリンシパル名。 |
-mapuser | 作成されたアカウントの名前 (cache<HOST> の形式)。 |
-pass | アカウントの作成時に指定されたパスワード。 |
-crypto | 使用する暗号化の種類。指定しない場合は、既定値の DES-CBC-CRC が使用されます。 |
-out | 生成する keytab ファイル。Caché サーバ・マシンに渡し、既存の keytab ファイルと交換またはマージします。 |
UNIX®/Linux プラットフォームのプリンシパル名はこのテーブルに示す形式 (リテラル cache を先頭部分に置きます) で指定する必要があります。
キー・ファイルを生成した後、Caché サーバ上のファイルにそのキー・ファイルを移動します。キー・ファイルの特徴は次のセクションで説明されています。
KDC での非 Windows Caché サーバのサービス・プリンシパルの作成
非 Windows 環境では、UNIX®/Linux または macOS の KDC を使用する UNIX®/Linux または macOS の各 Caché サーバにサービス・プリンシパルを作成する必要があります。サービス・プリンシパル名は、cache/<fully qualified hostname>@<kerberos realm> の形式で表されます。
キー・ファイルの特徴
このプリンシパルを作成したら、Caché サーバ上のキー・ファイルにそのキーを抽出します。キー・ファイルの特徴を以下に示します。
-
ほとんどの UNIX®バージョンでのパス名は install-dir/mgr/cache.keytab です。macOS および SUSE Linux でのパス名は /etc/krb5.keytab です。
-
このファイルは、Caché インストールおよびグループ cacheusr を所有するユーザが所有します。
-
このファイルのアクセス許可は、640 です。
Windows Kerberos クライアントの構成
Windows クライアントで Kerberos を使用している場合、ユーザに資格情報の入力を求めないよう、クライアントの構成が必要になることもあります。これは、資格情報を要求できないプログラムを使用している場合に必要となります。そうでないと、プログラムは接続不可能となります。
資格情報の入力を求めないように Windows を構成するには、以下の手順を実行します。
-
Windows クライアント・マシンで、レジストリ・エディタ regedit.exe を起動します。
-
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\Parameters キーに進みます。
-
このキーで、AllowTgtSessionKey の値を 1 に設定します。
Kerberos KDC 機能のテスト
非 Windows のサーバとクライアントのみで構成したシステムで Kerberos を使用する場合は、Windows のドメイン・コントローラを使用するより、UNIX®/Linux のネイティブな KDC を使用した方が簡単です。KDC のインストール方法と構成方法については、各ベンダのドキュメントを参照してください。通常、KDC のインストールと構成はシステム管理者が行います。
Kerberos をインストールするときは、以下の 2 つのソフトウェア・セットをインストールします。
-
KDC。Kerberos サーバ・マシンにインストールします。
-
クライアント・ソフトウェア。Kerberos クライアントをホストするすべてのマシンにインストールします。このソフトウェア・セットは、オペレーティング・システムによって大きく異なる場合があります。クライアント・ソフトウェアの種類とそのインストール方法については、オペレーティング・システム・ベンダのドキュメントを参照してください。
必要な Kerberos ソフトウェアをインストールしたら、kadmin、kinit、および klist コマンドを使用した簡単なテストを実行できます。これらのコマンドは、ユーザのプリンシパルを Kerberos データベースに追加し、ユーザの TGT (Ticket-Granting Ticket) を取得した上で、その TGT を列記します。
テストが完了し、登録されたプリンシパルのチケットを Kerberos が提供できることを確認したら、Caché をインストールする準備は完了です。
初期の Caché セキュリティ設定
インストール中、3 つの初期セキュリティ設定 (最小、通常、ロック・ダウン) のうち、いずれか 1 つを選択するよう求められます。この選択は、以下の各セクションで示すように、Caché のサービスとセキュリティに関する初期の承認構成設定を決定します。
初期のセキュリティ設定として通常またはロック・ダウンを選択した場合は、インストール手順でその他のアカウント情報を指定する必要があります。Kerberos 認証を使用する場合は、通常モードまたはロック・ダウン・モードを選択してください。詳細は、"ユーザ・アカウントの構成" のセクションを参照してください。
メモリ・イメージ内のデータの可視性 (多くの場合コア・ダンプと呼ばれる) について懸念がある場合は、"Caché セキュリティ管理ガイド" の “システム管理およびセキュリティ” の章にある “メモリ・イメージに存在する機密データの保護” のセクションを参照してください。
初期のユーザ・セキュリティ設定
以下のテーブルは、事前定義されたユーザのユーザ・パスワード要件と設定を選択したセキュリティ・レベルごとに示しています。
セキュリティ設定 | 最小 | 通常 | ロック・ダウン |
---|---|---|---|
パスワード・パターン | 3.32ANP | 3.32ANP | 8.32ANP |
不活動上限 | 0 | 90 日間 | 90 日間 |
_SYSTEM ユーザの有効化 | あり | あり | なし |
UnknownUser に割り当てられるロール | %All | なし | なし |
パスワード・パターンと不活動上限値の両方とも、システム管理ポータルの システム, システム管理, システムセキュリティ設定, システムワイドセキュリティパラメータ ページから管理できます。詳細は、"Caché セキュリティ管理ガイド" の “システム管理およびセキュリティ” の章にある "システム規模のセキュリティ・パラメータ" のセクションを参照してください。
インストール後、ユーザ設定は、システム管理ポータルの システム, セキュリティ管理, ユーザ ページで表示および管理できます。
パスワード・パターン
Caché をインストールすると、既定のパスワード要件セットが設定されます。ロック・ダウン・インストールの場合、初期要件としてのパスワードの長さは 8 ~ 32 文字になっていて、英数字または句読記号で構成できます。この略称は 8.32ANP です。それ以外の場合、3 ~ 32 文字の英数字または句読記号で構成されたパスワードが初期要件となります (3.32ANP)。
不活動上限
アカウントがアクティブではなかった期間が、この値で指定された日数を超えると、このアカウントは無効になります。最小のインストールでは、この上限は 0 に設定されます。これは、アカウントがアクティブではない期間がどれだけ続いても、アカウントは無効化されないことを表します。通常のインストールやロック・ダウン・インストールに対する上限の既定値は 90 日間です。
_SYSTEM ユーザの有効化
Caché 5.1 より前のバージョンでは、ユーザ名が _SYSTEM であり、パスワードが SYS である SQL システム・マネージャ・ユーザが含まれていました。この Caché バージョンでは、_SYSTEM に加え、インストール時に指定したパスワードを使用する次の事前定義のユーザが作成されます : _SYSTEM、Admin、SuperUser、CSPSystem、およびインスタンスの所有者 (Windows にインストールしたユーザおよびその他のプラットフォームのインストーラによって指定されたユーザ名)。
事前定義されたこれらのユーザの詳細は、"Caché セキュリティ管理ガイド" の “ユーザ” の章にある "事前定義のユーザ・アカウント" のセクションを参照してください。
UnknownUser に割り当てられるロール
認証されていないユーザが接続した場合、Caché では、UnknownUser という特殊な名前が $USERNAME に割り当てられ、そのユーザに対して定義されているロールが $ROLES に割り当てられます。最小セキュリティ・インストールでは、UnknownUser には %All ロールが割り当てられます。最小以外のセキュリティ・レベルを選択した場合、UnknownUser にはロールは割り当てられません。
$USERNAME および $ROLES の使用法の詳細は、"Caché セキュリティ管理ガイド" の “ユーザ” および “ロール” の章を参照してください。
初期のサービス・プロパティ
サービスは、ユーザとコンピュータが Caché に接続するための主要な手段です。Caché サービスの詳細は、"Caché セキュリティ管理ガイド" の “サービス” の章を参照してください。
サービス・プロパティ | 最小 | 通常 | ロック・ダウン |
---|---|---|---|
Use 許可が Public | はい | はい | いいえ |
認証が必要 | いいえ | はい | はい |
有効化されるサービス | 最も多い | 一部 | 最も少ない |
サービス・リソースに対する Use 許可が Public である場合、あらゆるユーザがそのサービスを利用できます。それ以外の場合は、権限を与えられているユーザのみがそのサービスを利用できます。
初期設定がロック・ダウンまたは通常の場合、すべてのサービスで何らかの認証が必要になります (Caché ログイン、オペレーティング・システム・ベース、または Kerberos)。それ以外の場合は、非認証の接続が許可されます。
初期のセキュリティ設定によって、Caché を最初に起動したとき、どのサービスが有効になり、どのサービスが無効になるかが決定します。以下のテーブルは、これらの初期設定を示しています。
サービス | 最小 | 通常 | ロック・ダウン |
---|---|---|---|
%Service_Bindings | 有効 | 有効 | 無効 |
%Service_CSP | 有効 | 有効 | 有効 |
%Service_CacheDirect | 有効 | 無効 | 無効 |
%Service_CallIn | 有効 | 無効 | 無効 |
%Service_ComPort | 無効 | 無効 | 無効 |
%Service_Console* | 有効 | 有効 | 有効 |
%Service_ECP | 無効 | 無効 | 無効 |
%Service_MSMActivate | 無効 | 無効 | 無効 |
%Service_Monitor | 無効 | 無効 | 無効 |
%Service_Shadow | 無効 | 無効 | 無効 |
%Service_Telnet* | 無効 | 無効 | 無効 |
%Service_Terminal† | 有効 | 有効 | 有効 |
%Service_WebLink | 無効 | 無効 | 無効 |
* Windows サーバのみで使用できるサービス
† 非 Windows サーバのみで使用できるサービス
インストール後、これらのサービスは、システム管理ポータルの システム, セキュリティ管理, サービス ページで表示および管理できます。
ユーザ・アカウントの構成
初期のセキュリティ設定として通常またはロック・ダウンを選択した場合は、インストール手順で追加の情報を指定する必要があります。
-
[資格情報] (Windows サーバ環境にインストールする場合のみ) — Caché サービスを実行する既存の Windows ユーザ・アカウントを選択します。既定のシステム・アカウント (Windows ローカル・システム・アカウントとして Caché を実行) を選択するか、または定義された Windows ユーザ・アカウントを入力できます。
Important:Kerberos を使用する場合は、Caché サービスを実行するために設定した定義済みのアカウントを入力する必要があります。"Windows Caché サーバのサービス・プリンシパルの作成" のセクションで説明したように、この目的のために特別に設定したアカウントを使用することをお勧めします。
定義済みのユーザ・アカウントを入力すると、インストールによって以下の事項が検証されます。
-
そのアカウントがドメインに存在するかどうか。
-
入力したパスワードが正しいかどうか。
-
そのアカウントに、サーバ・マシンに対するローカル管理者特権が与えられているかどうか。
-
-
[Caché ユーザ設定] (Windows 環境にインストールする場合) — Caché をインストールしているユーザ向けに、%All ロールを持つ Caché アカウントが作成され、Caché の管理に必要なサービスへのアクセス権がそのユーザに付与されます。
[インスタンスの所有者] (非 Windows 環境にインストールする場合) — Caché を実行するユーザの名前を入力します。Caché は、そのユーザに対して、%All ロールを持つアカウントを作成します。
そのアカウントのパスワードを入力し、確認のために同じパスワードを再度入力します。パスワードは、"初期のユーザ・セキュリティ設定" の一覧に示した条件を満たしている必要があります。
Caché アカウントとして、指定したパスワードを使用して、_SYSTEM、Admin、SuperUser、CSPSystem、およびインスタンスの所有者 (Windows にインストールしたユーザまたはその他のプラットフォームの指定されたユーザ) が作成されます。
Windows インストール時の初期セキュリティ設定として最小を選択する一方で、Caché に共有ドライブや共有プリンタへのネットワーク・アクセスが必要な場合は、Caché サービスを実行する Windows ユーザ・アカウントを手動で変更する必要があります。具体的には、既存のアカウントを選択するか新しいアカウントを作成して、サーバ・マシンに対するローカル管理者特権を持つアカウントにする必要があります。
Caché のインストールについては、このドキュメントの該当するプラットフォームの章を参照してください。"Caché セキュリティ管理ガイド" の説明を参照し、このセクションの手順を実行した上で、インストール手順に必要なセキュリティ情報を指定してください。