首页
学习
活动
专区
圈层
工具
发布

Moqui授权
EN

Stack Overflow用户
提问于 2019-02-20 12:29:55
回答 1查看 289关注 0票数 1

我试图使用REST访问Moqui实体。下面是一个示例调用。

代码语言:javascript
复制
GET http://localhost:8080/rest/m1/products/default
Accept: application/application/json
Authorization: Basic am9obi5kb2U6bW9xdWk=

我收到以下答复

代码语言:javascript
复制
{
  "errorCode": 403,
  "errors": "User john.doe is not authorized for View on Entity mantle.product.Product"
}

但是,调用mantle服务运行良好,如下面的示例所示

代码语言:javascript
复制
GET http://localhost:8080/rest/s1/mantle/facilities/
Accept: application/application/json
Authorization: Basic am9obi5kb2U6bW9xdWk=

[
  {
    "facilityId": "ZIRET_WH",
    "pseudoId": "ZIRET_WH",
    "facilityTypeEnumId": "FcTpWarehouse",
    "ownerPartyId": "ORG_ZIZI_RETAIL",
    "facilityName": "Ziziwork Retail Warehouse",
    "assetAllowIssueOverQoh": "Y",
    "lastUpdatedStamp": 1550661258932
  }
]

如何允许用户使用REST访问实体?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-23 03:25:01

结帐https://www.moqui.org/m/docs/framework/Security#artifact-authz

以下文本是从Moqui文档中复制的。

配置工件授权的第一步是创建一组工件。这涉及到组中每个工件的ArtifactGroup记录和ArtifactGroupMember记录,或者工件名称模式。

例如,下面是示例应用程序的工件组,其中根屏幕(ExampleApp.xml)是组的成员:

代码语言:javascript
复制
<moqui.security.ArtifactGroup artifactGroupId="EXAMPLE_APP" description="Example App (via root screen)"/>
<moqui.security.ArtifactGroupMember artifactGroupId="EXAMPLE_APP" artifactTypeEnumId="AT_XML_SCREEN" inheritAuthz="Y" artifactName="component://example/screen/ExampleApp.xml"/>

如果你着急,请继续读下去。

尝试在ExampleZzzDemoData.xml中添加以下代码片段

代码语言:javascript
复制
<moqui.security.ArtifactGroupMember artifactGroupId="EXAMPLE_APP" artifactName="mantle\..*"
                                        nameIsPattern="Y" artifactTypeEnumId="AT_ENTITY" inheritAuthz="Y"/>

注意:,这不是一个生产系统。让所有实体都有一个单一的角色是一个巨大的安全风险。确保您需要时间和计划授权。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54786439

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档