专用目录视图
默认情况下,目录视图是公用的。 在目录视图上启用目录保护以限制对包含有效签名令牌的请求的访问。
目录保护仅适用于选定的目录视图。 它不会更改视图的策略或层。 它确实将视图限制为单个价格手册 — 请参阅私有目录视图的价格手册限制。
有关何时保护目录视图的示例,请参阅受限访问密钥用例。
了解保护边界
目录保护仅适用于启用了目录保护的目录视图。 它保护目录和搜索请求,但不更改视图的策略或层,保护其他目录视图,也不保护购物车、结账或订单操作。
连接的商务后端必须独立强制实施购买资格。
私有目录视图的价格手册限制
专用目录视图只能引用一个价格手册。 这与公共目录视图不同,公共目录视图可以使用多个价格簿。
启用Catalog Protection后,目录视图表单上的价格手册选择器将从多选控件切换到单选(单选按钮)控件。
- 如果在分配了多个价格手册的目录视图上启用Catalog Protection,则在删除除一个价格手册外的所有价格手册之前,您将无法保存该视图。
- 如果您之前保存了一个私有目录视图,该视图具有在此限制存在之前的多个价格手册分配,则不会自动更改目录视图配置。 但是,下次编辑视图时,您必须先删除除一个价格手册之外的所有价格手册,然后才能保存更新。
在每种情况下,Adobe Commerce Optimizer都显示以下验证消息:A protected catalog view can use only one price book. Select 'Single price book only' to continue.
公共目录视图不受此限制的影响,并且可以继续引用多个价格手册。
保护目录视图
开始之前,请从客户端应用程序生成的公共密钥创建一个受限访问密钥。
-
在目录视图创建或编辑表单上,将 Catalog Protection 切换到Enabled。
-
在 Restricted Access Keys 下,选择最多三个受限访问密钥以分配给此目录视图。
{width="70%" modal="regular"}
-
单击Save catalog view。
目录视图现在已受保护。 只有具有来自已分配密钥的有效签名令牌的请求才能检索其数据。
note NOTE 最多允许五分钟以使目录保护配置更改生效。
验证是否强制访问
要确认专用目录视图拒绝未授权请求,请使用以下标头调用其GraphQL端点,其中带和不带签名令牌:
AC-View-IDAC-Price-Book-IDAC-Catalog-View-Access-Token不带有效令牌的请求会返回GraphQL错误,而不是目录数据,例如:
{
"errors": [
{
"message": "Access key validation failed: Missing token",
"extensions": { "x-commerce-exception": "access-key-invalid" }
}
]
}
如果请求中带有由分配的未过期密钥签名的令牌,则会按预期返回目录数据。 有关签署JWT和调用促销API的详细信息,请参阅开发人员文档。
管理受限制的访问密钥
如果Catalog Protection已启用,并且所有分配的键都已过期,则目录视图将变得不可访问 — 依赖此目录视图的店面无法从中提供数据。 分配新的未过期密钥以恢复访问权限。 有关说明,请参阅旋转键。