アカウント内のユーザー向けの IBM Cloud カタログとプライベート・カタログのカスタマイズ

プライベート・カタログにより、IBM Cloud® カタログと独自のカタログ内の製品に対するアクセス権限を一元的に管理することができます。 パブリック・カタログとプライベート・カタログをカスタマイズして、特定のソリューションをアカウント内のユーザーが選択できるようにすることができます。 それにより、カタログを確実に業務に関連したものにすることができます。

開始前に

開始前に

開始前に

  • 従量課金 (PAYG) またはサブスクリプションのアカウントを使用していることを確認してください。 詳しくは、アカウント・タイプの表示を参照してください。

  • このタスクを実行するために、カタログ管理サービスに対する管理者役割を持っていることを確認します。

  • カタログ管理プラグインをインストールするには、以下のコマンドを実行します。

    ibmcloud plugin install catalogs-management
    

開始前に

  • 従量課金 (PAYG) またはサブスクリプションのアカウントを使用していることを確認してください。 詳しくは、アカウント・タイプの表示を参照してください。

  • このタスクを実行するために、カタログ管理サービスに対する管理者役割を持っていることを確認します。

  • Terraform を使用してカタログをカスタマイズするには、以下を完了していることを確認してください。

    • Terraform CLI をインストールし、Terraform 用の IBM Cloud プロバイダー・プラグインを構成します。 詳しくは、 IBM Cloud® のチュートリアルを参照してください。 このプラグインは、以下のタスクを実行するために使用される IBM Cloud API を抽象化します。
    • HashiCorp 構成言語を使用してリソースを定義するための Terraform 構成ファイルを作成します。 詳しくは Terraformのドキュメントを参照。

コンソールを使用したすべての製品を含むプライベート・カタログの作成

以下の手順を実行して、IBM Cloud カタログ内のすべての製品が含まれるカタログを作成します。

  1. IBM Cloud コンソールで管理 > カタログに移動し、カタログの作成をクリックします。
  2. 「製品」(デフォルト) カタログ・タイプを選択します。
  3. 名前と説明を入力します。
  4. すべての製品オプションが選択されていることを確認し、作成をクリックします。 可用性は、 設定ページの アカウントレベルで設定されたフィルタに基づいています。
  5. カタログ名 > フィルターを管理をクリックして、カタログにすべての製品が含まれていることを確認します。 続いて、ステップ 1: IBM Cloud IBM Cloud カタログのすべての製品を含めるか除外するIBM Cloud カタログのすべての製品を含めるが選択されていることを確認します。

コンソールを使用した選択された製品を含むプライベート・カタログの作成

以下の手順を実行して、IBM Cloud カタログ内の特定の製品のセットが含まれるカタログを作成します。

  1. IBM Cloud コンソールで管理 > カタログに移動し、カタログの作成をクリックします。
  2. 「製品」(デフォルト) カタログ・タイプを選択します。
  3. 名前と説明を入力します。
  4. 「作成」 をクリックします。
  5. カタログ名 > フィルターを管理をクリックします。
  6. ステップ 1: IBM Cloud カタログのすべての製品を含めるか除外するIBM Cloud カタログのすべての製品を除外するを選択します。
  7. ステップ 2 をスキップし、ステップ 3: ルールへの例外の追加追加をクリックします。
  8. 条件として次を含めるが選択されていることを確認してから、ユーザーにアクセスを許可する製品を個別に選択します。 この例のプロジェクトでは watsonx Assistant、Speech to Text、Text to Speech を選択します。

コンソールを使用した IBM Cloud カタログの可視性の設定

プライベート・カタログを作成し終えたので、以下の手順を実行して、アカウント内のすべてのユーザーに対してパブリック・カタログの可視性をオフにします。

  1. 階層リンク内のカタログをクリックします。

  2. 「設定」 をクリックします。

  3. IBM Cloud カタログオフに設定します。

    IBM Cloud カタログの表示をオフにすると、 ハイライトページも非表示になります。 このページでは、さまざまな製品カテゴリーからトップクラスの結果を見つけることができます。

  4. パブリック・カタログに移動し、カタログ・スイッチャーを展開して、フィルターと設定が正しく適用されていることを確認します。 リストにはアカウント内のプライベート・カタログのみ表示されるはずです。

含める製品と除外する製品は、プライベート・カタログの設定を更新することによっていつでも更新できます。

カスタム・バナーによるプライベート・カタログのブランド設定

プライベート・カタログのバナーにカスタム・イメージを追加することで、ブランドに合わせてプライベート・カタログのルック・アンド・フィールを向上させることができます。 プライベート・カタログへのアクセス権限を付与されたすべてのユーザーは、デフォルトの IBM Cloud バナーではなく、プライベート・カタログにアクセスして製品を検索すると、カスタム・バナーを表示できます。 カスタムバナー画像を追加するには、以下の手順を実行します:

  1. 管理 > カタログ] に移動し、[ プライベートカタログ] をクリックします。

  2. バナーを追加するプライベート・カタログの行にある 「オーバーフロー・メニュー」 アイコン 「アクション」アイコン をクリックし、 「編集」 をクリックします。

  3. カタログのバナーフィールドにカスタムバナー URL を追加するか、または 「アップロード」 をクリックして画像を直接追加します。

    推奨される最大イメージ・サイズは 944 x 260 ピクセルです。

  4. 更新 をクリックします。

  5. 次に、 カタログ に移動し、リストからプライベート・カタログを選択して、プライベート・カタログの更新されたルック・アンド・フィールを表示します。

カタログに追加するプライベート・カタログ製品のプロバイダー名をカスタマイズすることもできます。 デフォルトでは、プロバイダーとして Community が表示されます。これはカタログ内のフィルターですが、会社名または組織名になるようにカスタマイズすることができます。 詳しくは、「 カタログ・エントリーの詳細の提供」を参照してください。

コンソールを使用したプライベート・カタログへのアクセスの許可

プライベート・カタログ内の製品を使用してユーザーが作業することを許可するには、カタログ管理サービスに対するビューアー役割をユーザーに割り当てます。

コンソールを使ってプライベート・カタログを削除する

プライベート・カタログを削除すると、カタログ内のすべての製品も削除されます。 プライベートカタログを削除するには、以下の手順を実行します:

  1. IBM Cloud コンソールの Manage > Catalogs に進み、 Private catalogs をクリックする。
  2. アクションアイコン アクションアイコン 削除したいカタログのアクションをクリックし、 削除を選択します。

削除してから 7 日以内に プライベート・カタログをリストア できます。

CLI を使用したすべての製品を含むプライベート・カタログの作成

以下の手順を実行して、IBM Cloud カタログ内のすべての製品が含まれるカタログを作成します。

  1. カタログを作成するリソース・グループをターゲットに設定します。 ibmcloud resource groups コマンドを実行してから、ibmcloud target -g "resource group" コマンドを実行します。

  2. 自分のアカウントに新規プライベート・カタログを作成するには、以下のコマンドを使用します。

    ibmcloud catalog create --name CATALOG [--catalog-description "DESCRIPTION"]
    

新しいプライベートカタログを作成すると、デフォルトで IBM Cloud のカタログ商品がすべて表示されます。 詳しくは、カタログ管理 CLI を参照してください。

CLI を使用した選択された製品を含むプライベート・カタログの作成

以下の手順を実行して、IBM Cloud カタログ内の特定の製品のセットが含まれるカタログを作成します。

  1. カタログを作成するリソース・グループをターゲットに設定します。 ibmcloud resource groups コマンドを実行してから、ibmcloud target -g "resource group" コマンドを実行します。
  2. 以下のコマンドを使用して、アカウントに新規プライベート・カタログを作成します。
    ibmcloud catalog create --name CATALOG [--catalog-description "DESCRIPTION"]
    
  3. 特定の製品 (複数可) および適用可能な価格プランを含めるかまたは除外するようにフィルターを更新します。 必ずカタログを指定してください。指定されないと、フィルターはデフォルトでアカウント・レベルになります。 その他のコマンド・オプションについては、カタログ管理 CLI を参照してください。
    ibmcloud catalog filter offering --offering PRODUCT-NAME
    

CLI を使用した IBM Cloud カタログの可視性の設定

デフォルトでは、IBM Cloud パブリック・カタログは対象アカウント内のすべてのユーザーに表示されます。 IBM Cloud カタログの可視性をオフにしてから、対象の製品をプライベート・カタログに追加することで、選択したユーザーのみに製品を表示できます。 以下のコマンドを使用して、アカウント内のすべてのユーザーに対してパブリック・カタログの可視性をオフにします。

ibmcloud catalog filter hide-ibm-public-catalog

CLI を使用したプライベート・カタログへのアクセスの許可

プライベート・カタログ内の製品を使用してユーザーが作業することを許可するには、カタログ管理サービスに対するビューアー役割をユーザーに割り当てます。

CLIを使用したプライベートカタログの削除

プライベート・カタログを削除すると、カタログ内のすべての製品も削除されます。 プライベート・カタログを削除するには、以下のコマンドを実行する:

ibmcloud catalog delete --catalog CATALOG

削除してから 7 日以内に プライベート・カタログをリストア できます。

API を使用したすべての製品を含むプライベート・カタログの作成

IBM Cloud カタログのすべての製品が含まれているカタログを作成するには、以下のサンプル要求で示されているように、カタログ管理 API を呼び出します。 変数は、ご使用のアカウントの値に置き換えてください。

curl -X 'POST' \
'https://cm.globalcatalog.cloud.ibm.com/api/v1-beta/catalogs' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H "Authorization: ${IC_IAM_TOKEN}" \
-d '{"label": "testcurlcatalog", "short_description": "testing creating a catalog through curl"}'
ServiceCall<Catalog> createCatalog(CreateCatalogOptions createCatalogOptions)

Example request

String label = "{label}";
String shortDesc = "{shortDesc}";
CreateCatalogOptions createOptions = new CreateCatalogOptions.Builder().label(label).shortDescription(shortDesc).build();
Response<Catalog> response = service.createCatalog(createOptions).execute();
System.out.println(response.getResult());
createCatalog(params, [callback()])

Example request

label = "{label}";
shortDesc = "{shortDesc}";
response = await service.createCatalog({ 'label': label, 'shortDescription': shortDesc });
console.log(response);
create_catalog(self, id=None, rev=None, label=None, short_description=None, catalog_icon_url=None, tags=None, url=None, crn=None, offerings_url=None, features=None, disabled=None, created=None, updated=None, resource_group_id=None, owning_account=None, catalog_filters=None, syndication_settings=None, **kwargs)

Exapmle request

label = "{label}"
shortDesc = "{shortDesc}"
response = self.service.create_catalog(label=label, short_description=shortDesc)
print(response)
(catalogManagement *CatalogManagementV1) CreateCatalog(createCatalogOptions *CreateCatalogOptions) (result *Catalog, response *core.DetailedResponse, err error)

Example request

label := "{label}"
shortDesc := "{shortDesc}"
createOptions := service.NewCreateCatalogOptions()
createOptions.SetLabel(label)
createOptions.SetShortDescription(shortDesc)
_, response, _ := service.CreateCatalog(createOptions)
fmt.Println(response)

新しいプライベート・カタログを作成すると、デフォルトで IBM Cloud のすべてのパブリック・カタログ製品が表示されます。 詳しくは、カタログ管理 API を参照してください。

API を使用した選択された製品を含むプライベート・カタログの作成

IBM Cloud カタログの特定の製品セットが含まれているカタログを作成するには、以下のサンプル要求で示されているように、カタログ管理 API を呼び出します。 変数は、ご使用のアカウントの値に置き換えてください。

curl -X 'POST' \
'https://cm.globalcatalog.cloud.ibm.com/api/v1-beta/catalogs' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H "Authorization: ${IC_IAM_TOKEN}" \
-d '{"label": "testcurlcatalog4", "short_description": "testing creating a catalog through curl", "catalog_filters": { "include_all": false, "id_filters": { "include": { "filter_terms": [ "AdvancedMobileAccess-d6aece47-d840-45b0-8ab9-ad15354deeea" ] } } }}'

catalog_filters オブジェクトごとに、 include_all フィールドのブーリアン値を false に設定して、すべてのパブリック・カタログ製品を除外してください。 category_filters 、または id_filtersfilter_terms 、組み込みたい製品プロパティまたは製品IDを指定します。 この例では、 AdvancedMobileAccess-d6aece47-d840-45b0-8ab9-ad15354deeea がプロダクトIDである。

コマンド・オプションについて詳しくは、カタログ管理 API を参照してください。

API を使用した IBM Cloud カタログの可視性の設定

アカウント内のパブリック・カタログを非表示にするには、hide_IBM_cloud_catalog フィールドにブール値 true を指定してください。 あるいは、include_all オブジェクトごとに、false フィールドにブール値 account_filters を指定することもできます。 そうすると、作成したプライベート・カタログのみがアカウント内に表示されます。

curl -X "PUT" "https://cm.globalcatalog.cloud.ibm.com/api/v1-beta/catalogaccount"
-H "accept: */*"
-H "Authorization: {iam-bearer-token}"
-d '{"id":"string","hide_IBM_cloud_catalog":true,"account_filters":{"include_all":true,"category_filters":{"additionalProp1":{"include":true,"filter":{"filter_terms":["string"]}},"additionalProp2":{"include":true,"filter":{"filter_terms":["string"]}},"additionalProp3":{"include":true,"filter":{"filter_terms":["string"]}}},"id_filters":{"include":{"filter_terms":["string"]},"exclude":{"filter_terms":["string"]}}}}'

詳しくは、カタログ管理 API を参照してください。

API を使用したプライベート・カタログへのアクセスの許可

プライベート・カタログ内の製品を使用してユーザーが作業することを許可するには、カタログ管理サービスに対するビューアー役割をユーザーに割り当てます。

APIを使用したプライベート・カタログの削除

プライベート・カタログを削除すると、カタログ内のすべての製品も削除されます。 プライベート・カタログを削除するには、以下のコマンドを使用する:

DELETE /catalogs/{catalog_identifier}

詳しくは、カタログ管理 API を参照してください。

削除してから 7 日以内に プライベート・カタログをリストア できます。

Terraform を使用したプライベート・カタログの作成

Terraform を使用する場合には、パブリック・カタログとプライベート・カタログをカスタマイズして特定のソリューションをアカウント内のユーザーに公開することはできません。 パブリック・カタログとプライベート・カタログをカスタマイズするには、UI、CLI、または API の手順に切り替えてください。

以下の手順でプライベート・カタログを作成する:

  1. main.tf ファイルに引数を作成します。 以下の例では、ibm_cm_catalog リソースを使用してカタログを作成します。ここで、label はカタログを識別する表示名です。

    resource "ibm_cm_catalog" "cm_catalog" {
    label = "label"
    short_description = "short_description"
    }
    

    詳しくは Terraformカタログ管理ページの引数リファレンス詳細を参照。

  2. 構成ファイルの作成が完了したら、Terraform CLI を初期化します。 詳しくは、 作業ディレクトリーの初期化を参照してください。

    terraform init
    
  3. main.tf ファイルからリソースをプロビジョンします。 詳しくは、 Terraform を使用したインフラストラクチャーのプロビジョニングを参照してください。

    1. terraform plan を実行して、提案されたアクションをプレビューするための Terraform 実行プランを生成します。

      terraform plan
      
    2. terraform apply を実行して、計画に定義されているリソースを作成します。

      terraform apply
      

Terraform を使用したプライベート・カタログへのアクセスの許可

プライベート・カタログ内の製品を使用してユーザーが作業することを許可するには、カタログ管理サービスに対するビューアー役割をユーザーに割り当てます。