カタログ・レベルまたはスペース・レベルでの製品の可視性の構成

カタログまたはスペースに公開されているすべての製品の可視性に制限を設定する方法。

開始前に

カタログまたはスペースレベルで商品の表示設定を行うには、そのカタログまたはスペースに対して 「設定」 「管理 」の権限を持つロールに割り当てられている必要があります。 ロールへのカタログ権限の割り当てに関する詳細については、 「カタログの作成と設定」 を参照してください。

注: 特に指定されていない限り、カタログに対するこのトピック内のすべての参照は、カタログ内の スペース にも適用できます。 Spaces の詳細については、 『 API Connect でのフィード機能の使用 』を参照してください。

このタスクについて

ユーザーに対する製品の可用性は、可視性設定 (どのユーザーが製品を表示できるかをカバーする設定) とサブスクライブ可能性設定 (どのユーザーが製品をサブスクライブできるかをカバーする設定) の両方によって決まります。 ドラフト製品を作成するときには、通常、製品文書で可視性とサブスクライブ可能性を定義します。詳しくは、「 製品の可視性の指定」および「 ドラフト製品の作成 」を参照してください。
注: 製品が公開された後、その表示設定や購読設定は、API Manager UIの「カタログ」で変更できます。 詳細については、 「製品の提供状況の変更」 を参照してください。
以下の手順に従って、カタログまたはスペースの設定を定義することで、そのカタログまたはスペースに公開されているすべての製品の表示設定を制御できます。 このカタログまたはスペースの設定が有効になっている場合、以下の 2 つの目的に使用できます。
  • この設定により、そのカタログまたはスペースに公開された製品が、カタログ・レベルまたはスペース・レベルで設定された可視性の制限を超える可視性設定を持つことができないようにすることができます。
  • この設定は、そのカタログまたはスペースに公開されているすべての製品のデフォルトの可視性設定として使用することもできます。
製品を公開する場合、可視性の設定は以下の 4 つの場所から取得できます。
  1. 製品のオーバーライド。製品を公開するために API Manager UI シーケンス中に設定されます。 この設定を使用すると、ドラフト製品のすべての可視性設定が置き換えられます。
  2. 製品文書。ドラフト製品で設定されます。
  3. カタログまたはスペースの設定。 カタログまたはスペースで製品の可視性が有効になっていて、可視性が製品オーバーライドまたは製品文書で設定されていない場合、カタログまたはスペースの可視性設定がデフォルト設定として使用されます。 この設定はリミッターとしても機能し、公開される製品がカタログまたはスペースの公開範囲設定を超えて表示されないようにすることができます。
  4. デフォルトの設定。 他の可視性設定がない場合は、以下のデフォルトの可視性およびサブスクライブ可能性の設定が使用されます。
    visibility: {
        view: {
            enabled: true,
            type: 'public',
            orgs: []
        },
        subscribe: {
            enabled: true,
            type: 'authenticated',
            orgs: []
        }
    }
以下の表は、カタログレベルの公開設定が有効になっている場合、どの製品レベルの公開設定が許可されるかを示しています。
表 1. カタログレベルの公開設定と、商品レベルの公開設定の関係。
カタログ・レベルの可視性設定 製品レベルの可視性の設定
公開。 パブリック、認証済み、またはカスタム。
認証されました。 認証済み、またはカスタム。
カスタム。 カスタム。 製品レベルの組織およびグループのURLは、カタログレベルの組織およびグループのURLによって制限されます。
次の表は、製品の購読設定が製品の公開レベルによってどのように制限されるかを示しています。 覚えておくべき基本的な前提は、製品をサブスクリプションで提供するには、その製品が閲覧可能でなければならないということです。 例えば、サブスクリプション・オーディエンスを authenticatedにする場合、可視性オーディエンスを customにすることはできません。
表 2. 「商品の表示設定」と「商品の購読設定」の関係
製品の可視性レベル 製品の購読設定
公開。 認証済み、またはカスタム。
認証されました。 認証済み、またはカスタム。
カスタム。 カスタム。 製品のサブスクライブ対象となる組織およびグループのURLは、製品の公開範囲に設定された組織およびグループのURLによって制限されます。
注:
  • カタログの公開設定の変更は、今後公開される商品にのみ適用されます。 既に公開されている製品に対する変更はありません。
  • 「カタログの可視性」設定は許可される最大の可視性レベルを設定するため、製品の可視性に対する更新は常に「カタログの可視性」設定に照らして検証されます。 そのため、カタログで製品の可視性が有効になっていて、製品の可視性の設定がカタログで設定されているよりも制限が少ない場合、そのカタログへの製品の公開は失敗します。 例えば、「カタログの可視性」設定が authenticatedの場合、そのカタログに公開されている製品の可視性設定を publicにすることはできません。
  • REST API Connect API を使用してカタログの表示設定を変更することもできます。 詳細は、REST API の API Connect ドキュメントを参照してください。

手順

  • API Manager のUIを使用してカタログまたはスペースの表示設定を変更するには、以下の手順を実行してください。
    1. 作業したいカタログを開いてください。
    2. [カタログ設定] タブをクリックします。
    3. サイドナビゲーションバーの 「製品の表示設定」 をクリックします。
    4. 「製品の表示を有効にする」 の切り替えスイッチを 「オン」 に設定し、「 確認」 をクリックします。
    5. カタログ内の製品を表示させたい組織またはグループを選択してください。
      以下のオプションから選択できます。
      • 公開 - すべてのユーザーが製品を閲覧できます。
      • 認証済み - 製品は、認証に成功したユーザーのみが閲覧できます。
      • カスタム - 製品は、指定した消費者団体およびグループにのみ表示されます。
    6. 「保存」をクリックします。
  • デベロッパーズ・ツールキットの CLI を使用してカタログまたはスペースの可視性の設定を変更するには、以下の手順を実行します。
    1. 以下のコマンドを使用して、プロバイダー組織のメンバーとして API Connect 管理サーバーにログインします。
      apic login --server mgmt_endpoint_url --username user_id --password password --realm provider/identity_provider
      
      ここで:
      • mgmt_endpoint_url は、プラットフォーム API エンドポイント URL です。
      • user_id は、ログインに使用するユーザー ID です。 このユーザー ID が、プロバイダー組織のメンバーでなければなりません。 このIDは、API Managerのユーザーインターフェースへのログインにも使用できます。
      • password は、指定されたユーザー ID に関連付けられているパスワードです。
      • identity_provider は、指定されたユーザー ID の認証に使用される ID プロバイダーです。
      例:
      apic login --server platform-api.myserver.com --username myuser --password mypassword --realm provider/myldap
      次のコマンドを入力して、使用可能なすべての ID プロバイダーのリストを表示することで、--realm パラメーターで使用する ID プロバイダーを判別できます (このコマンドを使用するためにログインする必要はありません)。
      apic identity-providers:list --scope provider --server platform_api_endpoint_url --fields title,realm
      例:
      apic identity-providers:list --scope provider --server platform_api_endpoint_url --fields title,realm 
      total_results: 2
      results:
        - title: API Manager User Registry
          realm: provider/default-idp-2
        - title: Corporate LDAP user registry
          realm: provider/corporate-ldap
      title 値により、使用する ID プロバイダーを判別できます。その後に、表示された realm 値から対応する --realm パラメーターを直接コピーできます。 インストール API Connect 後に管理者が作成したIDプロバイダーについては、その名前は作成時に決定されます。 プロバイダー組織のメンバーとしてログインするためのデフォルトの API Manager ローカル・ユーザー・レジストリーは default-idp-2 です。

      CLI から管理サーバーにログインする方法について詳しくは、 管理サーバーへのログインを参照してください。

    2. 以下の構造の YAML ファイルを作成して、可視性の設定を定義します。
      allowed_product_visibility: {
          view: {
              enabled: true_or_false,
              type: 'visibility_type',
              org_urls: [],
              group_urls: []
          },
          subscribe: {
              enabled: false,
              type: 'authenticated'
          }
      }
      ここで、 allowed_product_visibility プロパティーの view セクションは以下のとおりです。
      • enabled - true または falseに設定できます。 デフォルト設定は falseです。
        この type 設定が に設定されている場合、そのカタログまたはスペース trueに公開されるすべての製品について、その公開範囲は、この設定で指定された公開範囲と同等か、それよりも制限の厳しいものに限定されます。 製品文書で可視性が設定されていない場合、「カタログ」または「スペース」の設定が公開のデフォルトとして使用されます。 常にカタログまたはスペースの設定をデフォルトとして使用する場合は、製品の可視性が設定されていないことを確認する必要があります。
        注: ドラフト製品を作成していて、可視性が設定されていない場合、サンドボックス・カタログの allowed_product_visibility フィールドの値がデフォルトとして使用されます。
        falseに設定すると、この機能は無効になり、製品文書で定義されている製品の可視性設定が使用されます。
      • type - enabledtrueに設定されている場合、このプロパティーは、このカタログまたはスペースに公開される製品の最大可視性を指定します。 有効な設定は以下の通りです:
        • public -製品はすべてのユーザーに表示されます。
        • authenticated -製品は、正常に認証されたユーザーにのみ表示されます。
        • custom -製品は、 org_urls および group_urlsで指定されたコンシューマー組織およびコンシューマー・グループにのみ表示されます。
      • org_urls - typecustomに設定されている場合、このプロパティーは、製品を表示するコンシューマー組織の URL を指定します。 それ以外の場合は空のままにします
      • group_urls - typecustomに設定されている場合、このプロパティーは、製品を表示するコンシューマー組織グループの URL を指定します。 それ以外の場合は空のままにします

      subscribe セクションは、カタログ・レベルまたはスペース・レベルでは編集できません。 サブスクライブ可能性は、製品資料の subscribe セクションで定義されており、少なくとも authenticatedと同じ制限が必要です。 詳しくは、「 製品の可視性の指定」を参照してください。

    3. 次のコマンドを使用して、カタログ設定を変更します。
      apic catalog-settings:update --server mgmt_endpoint_url --catalog catalog_name --org organization_name filename
      

      ここで、 filename は、ステップ 2で作成した YAML ファイルの名前です。

      注: カタログでスペースが有効になっている場合は、 --space オプションを使用して、可視性の設定をスペース・レベルで設定する必要があります。
    4. 次のコマンドを使用して、更新されたカタログ設定を確認します。
      apic catalog-settings:get --server mgmt_endpoint_url --catalog catalog_name --org organization_name --output -