[PaaS のみ]{class="badge informative" title="Adobe Commerce on Cloud プロジェクト(Adobeが管理する PaaS インフラストラクチャ)およびオンプレミスプロジェクトにのみ適用されます。"}

ACSD-50368:非同期REST APIまたは非同期Bulk REST APIを使用して顧客を作成すると、顧客group_idが無視される

NOTE
ACSD-50368 パッチは部分的に非推奨です。この問題は、2.4.4より前のバージョンの必須セキュリティパッチ APSB25-08で解決されています。

ACSD-50368 パッチは、Async REST APIまたはAsync Bulk REST APIを使用して顧客を作成する際にcustomers group_idが無視される問題を修正します。 このパッチは、Quality Patches Tool (QPT) 1.1.33がインストールされている場合に利用できます。 パッチ IDはACSD-50368です。 この問題は、Adobe Commerce 2.4.7で修正される予定です。

影響を受ける製品とバージョン

パッチはAdobe Commerceのバージョン​用に作成されました

  • Adobe Commerce(すべてのデプロイメント方法) 2.4.4

Adobe Commerceのバージョンとの互換性:

  • Adobe Commerce(すべてのデプロイメント方法) 2.4.3 - 2.4.3-p3
NOTE
このパッチは、新しいQuality Patches Tool リリースを含む他のバージョンに適用される可能性があります。 パッチがAdobe Commerceのバージョンと互換性があるかどうかを確認するには、magento/quality-patches パッケージを最新バージョンに更新し、Quality Patches Tool:パッチの検索ページ ​で互換性を確認します。 パッチ IDを検索キーワードとして使用して、パッチを検索します。

イシュー

顧客group_idは、Async REST APIまたはAsync Bulk REST APIを使用して顧客を作成すると無視されます。

前提条件:

処理キュー用にRabbitMQを設定します。

bin/magento setup:config:set --amqp-host=services --amqp-port=5672 --amqp-user=guest --amqp-password=guest
bin/magento setup:upgrade --keep-generated

複製する手順

  1. Async Rest API リクエストを使用して顧客を作成します。

    code language-none
    curl --location 'https://site.test/rest/default/async/V1/customers' \
    --header 'Authorization: Bearer eyJraWQiOiIxIiwiYWxnIjoiSFMyNTYifQ.eyJ1aWQiOjEsInV0eXBpZCI6MiwiaWF0IjoxNjc5NDMzNzcxLCJleHAiOjE2Nzk0MzczNzF9.xau6KyILrkdCY_8K8aMlH4TmqcCXdH4Zcst_CLhdxYY' \
    --header 'Content-Type: application/json' \
    --header 'Cookie: PHPSESSID=844fltmqq1g15qe4ju3l00tiai' \
    --data-raw '{
        "customer": {
            "email": "foo@bar.test",
            "firstname": "Test",
            "lastname": "User",
            "group_id": 2
        }
    }
    
  2. 同様の応答が返されます。

    code language-none
    {
        "bulk_uuid": "b101ddcb-b7fd-4208-a2a6-2e84c9e61bcd",
        "request_items": [
            {
                "id": 0,
                "data_hash":   "6e718a93b02a30a98cb994d1c4e8cf1eeedcb962f384e4a463c"   ,
                "status": "accepted"
            }
        ],
        "errors": false
    }
    
  3. この非同期リクエストのステータスを確認します。

    code language-none
    curl --location 'https://site.test/rest/default/V1/bulk/b101ddcb-b7fd-4208-a2a6-2e84c9e61bcd/detailed-status' \
    --header 'Authorization: Bearer eyJraWQiOiIxIiwiYWxnIjoiSFMyNTYifQ.eyJ1aWQiOjEsInV0eXBpZCI6MiwiaWF0IjoxNjc5NDMzNzcxLCJleHAiOjE2Nzk0MzczNzF9.xau6KyILrkdCY_8K8aMlH4TmqcCXdH4Zcst_CLhdxYY' \
    --header 'Cookie: PHPSESSID=844fltmqq1g15qe4ju3l00tiai
    

期待される結果:

新しい顧客に対してgroup_idが2に正しく設定されます。

実際の結果:

group_idは、新規顧客のデフォルト値1に設定されます。

{
    "operations_list": [
        {
            "id": 0,
            "bulk_uuid": "b101ddcb-b7fd-4208-a2a6-2e84c9e61bcd",
            "topic_name": "async.magento.customer.api.accountmanagementinterface.createaccount.post",
            "serialized_data": null,
            "result_serialized_data": "{\"id\":4,\"group_id\":1,\"created_at\":\"2023-03-21 22:01:09\",\"updated_at\":\"2023-03-21 22:01:09\",\"created_in\":\"Default Store View\",\"email\":\"foo@bar.test\",\"firstname\":\"Test\",\"lastname\":\"User\",\"store_id\":1,\"website_id\":1,\"addresses\":[],\"disable_auto_group_change\":0,\"extension_attributes\":{\"is_subscribed\":false}}",
            "status": 1,
            "result_message": "Service execution success Magento\\Customer\\Model\\AccountManagement\\Interceptor::createAccount",
            "error_code": null
        }
    ],
        "user_type": 2,
        "bulk_id": "b101ddcb-b7fd-4208-a2a6-2e84c9e61bcd",
        "description": "Topic async.magento.customer.api.accountmanagementinterface.createaccount.post",
        "start_time": "2023-03-21 22:01:09",
        "user_id": 1,
        "operation_count": 1
}

パッチを適用する

個別のパッチを適用するには、デプロイメント方法に応じて次のリンクを使用します。

関連トピックス

Quality Patches Toolについて詳しくは、次を参照してください。

QPTで使用可能な他のパッチについて詳しくは、Quality Patches Tool: ​ ガイドの「Quality Patches Tool パッチを検索する」を参照してください。

recommendation-more-help
c2d96e17-5179-455c-ad3a-e1697bb4e8c3