マルチテナンシーを実装する方法

以下のシナリオでは、CA SDM 特権ユーザである管理者が初めてマルチテナンシーを実装する方法を説明します。 初めから終わりまで、CA SDM の実装は以下のように変化します。
casm173
以下のシナリオでは、CA SDM 特権ユーザである管理者が初めてマルチテナンシーを実装する方法を説明します。 初めから終わりまで、CA SDM の実装は以下のように変化します。
  1. 単一のクライアントが単一の実装を使用します。
  2. 複数の独立したクライアント(テナント)およびそれらのユーザが単一の実装を
    共有
    します。 各テナントは、自身のデータを使用するためにのみ実装を参照できます。
管理者は、CA SDM 管理インターフェースを使用して以下の手順を実行します。
手順 1: マルチテナンシーのインストールおよび有効化
マルチテナンシーを有効にするには、製品のマルチテナンシー オプションをインストールし、セットアップ モードを有効にします。 セットアップ モードでは、マルチテナンシー機能を管理者向けに有効にします。 このモードでは、管理者はテナント関連のオブジェクトおよび属性を表示および編集できます。 ただし、テナンシー制限はシステムによって適用されないため、エンド ユーザには変更は表示されません。 このモードにより、テナントの定義やテナントへのオブジェクトの割り当てなどのタスクを実行することで、製品の通常使用に影響を与えずにマルチテナンシーを準備できます。
マルチテナンシーが[セットアップ]モードの場合、Web インターフェースの変更はサービス プロバイダ管理者に対してアクティブになります。 これにより、テナンシー関連のオブジェクトおよびデータを Web インターフェースで表示できるようになります。 ただし、テナンシーの制限は適用されないため、サービス プロバイダ管理者以外のユーザには製品インターフェースの変更は表示されません。 このため、マルチテナンシーの実装中に、引き続き製品を使用できます。
マルチテナンシーの実装を続行する前に、Domain_Constraint テーブルと usp_role テーブルのバックアップを作成します。 マルチテナンシーが失敗した場合、バックアップを使用してテーブルを復元できます。
以下の手順に従います。
  1. 管理者として CA SDM にログインし、[管理]タブをクリックします。
  2. 左側のツリーで、[オプション マネージャ]-[マルチテナンシー]をクリックします。
    [オプション リスト]ページが表示されます。
  3. [multi_tenancy]をクリックします。
    [multi_tenancy オプションの詳細]ページが表示されます。
  4. [編集]をクリックします。
    [更新オプション]ページが表示されます。
  5. [オプション値]ドロップダウン リストから[セットアップ]を選択します。
  6. [インストール]をクリックします。
    [multi_tenancy]オプションがインストールされます。
  7. [更新]ボタンをクリックします。
    ページに変更内容が表示されます。
  8. ウィンドウを閉じます。
    [オプション リスト]ページが再表示されます。
  9. サービスを再起動します。
    マルチテナンシーをセットアップ モードで実装する準備ができました。
手順 2: サービス プロバイダ テナントの作成
サービス プロバイダ テナントを作成できます。 最初のテナントを作成する場合、以下が適用されます。
  1. 最初のテナントは常にサービス プロバイダになります。
    この指定は変更できません。[テナントの作成]ページの[サービス プロバイダ]チェック ボックスおよび[レコード ステータス]フィールドは読み取り専用です。
  2. 特権ユーザ(通常 Windows では ServiceDesk、Linux/UNIX では srvcdesk)は、サービス プロバイダ テナントに関連付けられます。 すべてのシステム連絡先(System_AHD_Generated など)は、新規サービス プロバイダ テナントに属するように設定されます。
    注:
    Windows には、Administrator システム ユーザが用意されています。 特権ユーザは、テナントを Administrator ユーザに手動で割り当てる必要があります。
以下の手順に従います。
  1. [管理]タブで、[セキュリティと役割の管理]-[テナント]を選択します。
    [セキュリティと役割の管理]-[テナント]オプションは、マルチテナンシーがインストールされており、[セットアップ]または[オン]モードの場合にのみ使用できます。
  2. [新規作成]をクリックします。
    [テナントの新規作成]ページが表示されます。
  3. 以下のフィールドを指定します。
    • 名前
      テナントの名前が表示されます。
    • サービス プロバイダ
      このテナントがサービス プロバイダであるかどうかを識別します。
    • テナント番号
      (情報のみ)テナント番号が表示されます。 CA SDM は、このオプションを使用しません。
    • レコード ステータス
      テナントをアクティブまたは非アクティブに設定します。
    • 親テナント
      このテナントの上に別のテナントを指定して、このテナントをテナント階層におけるサブテナントにします。
    • サブテナントを許可
      このテナントがサブテナントを持つことができるようにします。 テナントは設定を変更することができません。
    • テナントの深さ
      (情報のみ)このテナントの深さを指定します。
    • スーパーテナント グループ
      (情報のみ)このテナントと、テナント階層内のすべての上位テナントが含まれる、システム管理のテナント グループを示します。
    • サブテナント グループ
      (情報のみ)このテナントと、テナント階層内のすべての下位テナントが含まれる、システム管理のテナント グループを示します。
    • 外部キー グループ
      (情報のみ)このテナントに属するデータ内の SREL から参照できるテナントが含まれる、システム管理のテナント グループを示します。 外部キー グループは、スーパーテナント グループと同じです。
    • 関連テナント グループ
      (情報のみ)このテナントのスーパーテナントおよびサブテナント グループの両方で構成される、システム管理のテナント グループを示します。
    • 使用条件
      テナントの使用条件文を指定します。 使用条件ステートメントの作成の詳細については、「使用条件の設定」を参照してください。
    • ロゴ
      テナント ロゴ ファイルの URL を指定します。どの Web イメージ タイプでも指定できます。
    • 場所
      ロケーションを指定するためのロケーション ルックアップ ページを表示します。
    • 連絡先
      連絡先を指定するための連絡先ルックアップ ページを表示します。
    連絡先がそれぞれのテナントと関連付けられていない場合、[電子メール アドレス]フィールドと[ポケットベルの電子メール アドレス]フィールドは非アクティブです。
  4. [保存]をクリックします。
    サービス プロバイダ テナントが作成されます。
  5. ウィンドウを閉じます。
  6. [テナント リスト]を右クリックし、[更新]をクリックします。
    [テナント リスト]が更新され、作成したサービス プロバイダ テナントが表示されます。
  7. CA SDM からログアウトします。
手順 3: テナントの作成
HID_CreateTenant
CA SDM を使用して、新しいテナントを作成できます。 必要に応じてテナントを自由に作成し、クライアントにサポートを提供する複数の会社を管理できます。
以下の手順に従います。
  1. サービス プロバイダのメンバーとして管理インターフェースにログインします。 このログインを簡単に行うには、特権ユーザ(ServiceDesk など)としてログインします。 このユーザは、自動的にサービス プロバイダ テナントに属します。
  2. [管理]タブで、[セキュリティと役割の管理]-[テナント]を選択します。
    [セキュリティと役割の管理]-[テナント]オプションは、マルチテナンシーがインストールされており、[セットアップ]または[オン]モードの場合にのみ使用できます。
  3. [新規作成]をクリックします。
    [テナントの新規作成]ページが表示されます。
  4. このページ内のフィールドに入力します。 一部のフィールドは一目で意味がわかるようになっています。 以下のフィールドについて説明します。
    • サービス プロバイダ
      テナントがサービス プロバイダであるかどうかを識別します。 最初に作成されたテナントは、常にサービス プロバイダになります。それ以降、このチェック ボックスは読み取り専用になります。
    • テナント番号
      (情報のみ)テナント番号が表示されます。 CA SDM は、このオプションを使用しません。
    • サブテナントを許可
      このテナントがサブテナントを持つことができるようにします。 テナントは設定を変更することができません。
    • テナントの深さ
      (情報のみ)このテナントの深さを指定します。
    • スーパーテナント グループ
      (情報のみ)このテナントと、テナント階層内のすべての上位テナントが含まれる、システム管理のテナント グループを示します。
    • サブテナント グループ
      (情報のみ)このテナントと、テナント階層内のすべての下位テナントが含まれる、システム管理のテナント グループを示します。
    • 外部キー グループ
      (情報のみ)このテナントに属するデータ内の SREL から参照できるテナントが含まれる、システム管理のテナント グループを示します。 外部キー グループは、スーパーテナント グループと同じです。
    • 関連テナント グループ
      (情報のみ)このテナントのスーパーテナントおよびサブテナント グループの両方で構成される、システム管理のテナント グループを示します。
    • 使用条件
      テナントの使用条件文を指定します。 使用条件ステートメントの作成の詳細については、「使用条件の設定」を参照してください。
    • ロゴ
      テナント ロゴ ファイルの URL を指定します。どの Web イメージ タイプでも指定できます。
    連絡先がそれぞれのテナントと関連付けられていない場合、[電子メール アドレス]フィールドと[ポケットベルの電子メール アドレス]フィールドは非アクティブです。
  5. [保存]をクリックしてウィンドウを閉じます。
    テナントが作成されます。
  6. (オプション)[テナント グループ]をクリックして、このテナントを新規グループまたは既存のグループに追加します。
手順 4: 役割へのテナント アクセス権の割り当て
CA SDM ユーザの役割は、アクセス認証とユーザ インターフェースの両方を制御します。 ユーザが利用可能な役割は、アクセス タイプによって異なります。 マルチテナンシーでは、ユーザが役割の範囲内でアクセスできるテナントまたはテナント グループを制御できます。 マルチテナンシーがインストールされている場合、役割の詳細ページには、テナント アクセス権の割り当てまたは編集が可能な追加のオプションが表示されます。
テナント ユーザに、各自のデータ以外のデータへのアクセス権を付与できます。 非サービス プロバイダ テナント アナリストは、自分のテナントおよびサブテナントに対するアクセス権のみを持ちます。 しかし、機能アクセス権を更新することにより、アナリストのテナントを追加できます。 たとえば、役割を定義して、その役割のユーザに対して特定のテナント グループへの読み取りおよび書き込みアクセスを個別に設定できます。
以下の手順に従います。
  1. [セキュリティと役割の管理]-[役割管理]-[役割リスト]に移動します。
    [役割リスト]が表示されます。
  2. テナント アクセスを割り当てる役割をクリックします。
    [役割の詳細]ページが表示されます。このページの[権限]タブには、[テナントのアクセス]ドロップダウン リストと[テナント書き込みアクセス]ドロップダウン リストがあります。 [テナントのアクセス]は表示専用で、[テナント書き込みアクセス]は作成および更新できます。
  3. [編集]をクリックします。
    [役割の更新]ページが表示されます。
  4. [テナントのアクセス]および[テナント書き込みアクセス]のオプションを選択します。
    • テナント アクセスと同じ
      [テナントのアクセス]の設定と同じアクセス権を設定します。 この値は、[テナント書き込みアクセス]ドロップダウン リストのデフォルトで、[テナント書き込みアクセス]オプションのみで選択できます。
    • すべてのテナント
      テナント制限を削除します。 このアクセス権を持つ役割のユーザは、以下の操作を実行できます。
      • データベースのオブジェクトを表示する(読み取りアクセス権)。
      • データベースでテナント オブジェクトを作成および更新する(アクセス権)。
      [すべてのテナント]アクセス権を持つユーザがオブジェクトを作成する場合は、新規オブジェクトのテナントを選択する必要があります。
    • 単一テナント
      役割のテナント アクセス権を、指定したテナントに設定します。 このオプションを選択すると、特定のテナントを選択するためのフィールドが表示されます。 この役割のユーザは、指定されたテナントに関連付けられたオブジェクトにのみアクセスできます。
    • テナント グループ
      役割のテナント アクセス権を、ユーザ定義またはシステム管理のテナント グループに設定します。 このオプションを選択すると、特定のテナント グループを選択するためのフィールドが表示されます。 この役割のユーザは、指定されたグループ内のテナントに関連付けられたオブジェクトにのみアクセスできます。 テナント グループ アクセス権を持つユーザがオブジェクトを作成する場合は、新規オブジェクトのテナントを選択する必要があります。
    • 連絡先のテナント
      役割のテナント アクセス権を、その役割を使用する連絡先のテナントに設定します。 この役割のユーザは、自分のテナントに関連付けられたオブジェクトにのみアクセスできます。
    • 連絡先のテナント グループ
      アナリストの役割のアクセス権を、アナリストが作業を行うテナント グループ(アナリストの連絡先レコードで指定される)に設定します。 この役割を持つユーザがアナリストでない場合、この選択には[連絡先のテナント]と同じ効果があります。 このオプションは、アナリストに対してのみ使用できます。
    • 連絡先のサブテナント グループ
      役割のテナント アクセス権を、その役割を使用する連絡先のサブテナント グループに設定します。 この役割のユーザは、自分のサブテナント グループに関連付けられたオブジェクトにのみアクセスできます。
    • 連絡先のスーパーテナント グループ
      役割のテナント アクセス権を、その役割を使用する連絡先のスーパーテナント グループに設定します。 この役割のユーザは、自分のスーパーテナント グループに関連付けられたオブジェクトにのみアクセスできます。
    • 連絡先の関連するテナント グループ
      役割のテナント アクセス権を、その役割を使用する連絡先の関連テナント グループに設定します。 この役割のユーザは、自分の関連テナント グループに関連付けられたオブジェクトにのみアクセスできます。
    • パブリックの更新
      役割に属するサービス プロバイダ ユーザがパブリック データを作成または更新する権限があるかどうかを制御します。 現在の役割のアクセス権に関係なく、すべてのユーザがパブリック データを表示できます。 テナント ユーザ(サービス プロバイダ以外のテナントに属するユーザ)は、役割にかかわらずパブリック データを更新することができません。
    • [保存]をクリックします。
      役割に対してテナント アクセス権が割り当てられます。 ユーザがデータベースにクエリを実行した場合、Service Desk Manager は、返される結果を、そのユーザの役割に関連付けられているテナントに属するデータ オブジェクトに制限します。
手順 5: サブテナントの作成
HID_CreateSubTenant
サブテナントを使用すると、組織目的およびデータ共有目的のテナント階層を定義および変更できます。 テナントをテナント階層に配置するには、テナントに親テナントを割り当てます。
以下の手順に従います。
  1. [管理]タブで、[セキュリティと役割の管理]-[テナント]を選択します。
    [テナント リスト]が表示されます。
    [セキュリティと役割の管理]-[テナント]オプションは、マルチテナンシーが有効になっている場合にのみ使用できます。
  2. 編集する既存のテナントをクリックするか、または[新規作成]をクリックします。
    テナント詳細ページが表示されます。このページでは、必要なデータまたは変更を入力できます。
  3. 親テナントを選択します。
    [親テナント]ドロップダウン リストには、サブテナントを持つことを許可されたテナントのみが表示されます。
  4. [保存]をクリックします。
    テナントは親テナントのサブテナントです。
    注:
    テナントがサブテナントの場合、そのテナントは親テナントのサブテナント グループに属します。 親テナントは、サブテナントのスーパーテナント グループに属します。 各テナントは、他方のテナントの関連するテナント グループに属します。
手順 6: テナント グループの作成
HID_CreateTenantGroups
テナント グループは、CA SDM オブジェクトへのアクセス権を共有するテナントの集合です。 テナント グループを使用すると、テナントへのアクセス権を分類、管理、および制御できます。 テナントまたはテナントのグループに対して役割を割り当てることができます。 マルチテナンシーがアクティブである場合、各役割は、すべてのテナント(パブリック)、単一のテナント、または単一のテナント グループに関連付けられます。 役割が複数のテナントへのアクセスを必要とする場合は、テナント グループを使用します。 たとえば、特定の地理上の場所に属するテナントで構成されるテナント グループにアナリストを割り当てることができます。
テナント階層の各テナントに対して、以下の 3 つのテナント グループが自動的に生成され、管理されます(
tenant
はテナント名)。
  • tenant
    _subtenants(テナント、その子テナント、およびそれらの下位のテナント)
  • tenant
    _supertenants(テナント、その親テナント、およびその上位のスーパーテナント)
  • tenant
    _relatedtenants(単一の階層全体)
システム保守テナント グループは、ユーザ定義テナント グループと同じように使用できます。 ただし、システム保守テナント グループについてはその名前および説明のみを変更できます。
例: 役割 A がテナント A、テナント B、テナント J へのアクセス権を必要とする場合
各テナントに対して役割を個別に割り当てる代わりに、以下の手順に従います。
  1. テナント グループを作成し、テナント A、テナント B、およびテナント J をそのグループに追加します。
  2. 役割 A をそのテナント グループに割り当てます。
    役割 A に割り当てられたユーザ(連絡先)は、テナント グループ(テナント A、B、J で構成される)にアクセスできます。
以下の手順に従います。
  1. サービス プロバイダとしてログインし、[管理]タブをクリックし、[セキュリティと役割の管理]を選択します。
  2. [テナント グループ]をクリックします。
    [セキュリティと役割の管理]-[テナント グループ]オプションは、マルチテナンシーがインストールされている場合([オン]または[セットアップ])にのみ使用できます。
  3. [新規作成]をクリックします。
    [テナント グループの新規作成]ページが表示されます。
  4. テナント グループ フィールドにデータを入力して、[保存]をクリックします。
    テナント グループが作成されます。
  5. ウィンドウを閉じます。
    [テナント グループ リスト]が表示されます。
  6. [テナント リスト]を右クリックし、[更新]を選択します。
    [テナント グループ リスト]が更新されます。
  7. [テナント グループの詳細]ページの[テナントの更新]をクリックして、テナント メンバーをグループに追加します。
  8. (オプション)作成する各テナント グループに対して手順 3 ~ 6 を繰り返します。
手順 7: マルチテナンシーのオン モードへの変更
マルチテナンシー オプションをオン モードに変更して、実装したマルチテナンシーが完全に機能するようにできます。 このようにすると、各テナントは自身のデータを使用するためにのみ実装を参照できます。 各テナントは、別のテナントのデータを更新または表示できません。
以下の手順に従います。
  1. 管理者として CA SDM にログインし、[管理]タブをクリックします。
  2. 左側のツリーで、[オプション マネージャ]-[マルチテナンシー]をクリックします。
    [オプション リスト]ページが表示されます。
  3. [multi_tenancy]をクリックします。
    [multi_tenancy オプションの詳細]ページが表示されます。
  4. [編集]をクリックします。
    [更新オプション]ページが表示されます。
  5. [オプション値]ドロップダウン リストから[セットアップ]を選択します。
  6. [編集]をクリックします。
    [更新オプション]ページが表示されます。
  7. [オプション値]ドロップダウン リスト内の以下の値から、[オン](デフォルト)を選択します。
    • on
      (デフォルト)テナントが NULL であり、テナントを持つテーブルへの SREL が利用できない場合、テナントが必要なテーブルへのチェックインを禁止します。
    • オン(警告)
      テナントが必要なオブジェクトが NULL テナントで作成または更新された場合、エラーをログに書き込みますが、チェックインして処理を継続できます。
    • オン(許可)
      テナントが必要なオブジェクトが Null テナントで作成または更新された場合、警告をログに書き込みますが、チェックインして処理を継続できます。
  8. [保存]、[更新]の順にクリックします。
    ページに変更内容が表示されます。
  9. ウィンドウを閉じます。
    [オプション リスト]ページが再表示されます。
  10. サービスを再起動します。
    マルチテナンシーが完全に機能するようになります。
手順 8: 実装の確認および問題の修正
マルチテナンシーの実装を確認し、見つかった問題を修正します。
以下の手順に従います。
  1. 特権ユーザ名(通常は ServiceDesk)を使用して CA SDM にログインします。
  2. [管理]タブをクリックし、[テナント リスト]を参照します。
    [テナント名]で特権ユーザのプロバイダが[はい]として表示されます。
  3. [連絡先リスト]を参照して、マルチテナンシー制限が適用されていることを確認します。
    テナントが必要なテーブルにテナントなしデータが誤って含まれている場合は、以下のメッセージが[連絡先リスト]に表示されます。
    AHD05358 There were nn untenanted active Contact objects at CA Service Desk Manager startup.
    テナントなしデータがデータベースに存在する場合、マルチテナンシー オプション モードを[オン(警告)]または[オン(許可)]に設定できます。 これらのモードを使用すると、NULL テナントが含まれるテナントが必要なテーブルを更新できます。 この方法を使用すると、テナントが含まれないチケットに対して、サービス レベル アグリーメント(SLA)または関連イベントが実行されるときに、データの損失を防ぐことができます。
  4. (オプション)問題が発生した場合はマルチテナンシーを無効にして、以下の手順に従います。
    1. Domain_Constraint テーブルおよび usp_role テーブルを復元します。
    2. マルチテナンシー オプションを[セットアップ]に戻します。
    3. システムを再起動します。
    元に戻すことが必要な問題をすべて修正する間、サイトでは以前の操作を再開できます。