🕌

Some resources have been omitted because of insufficient autho... への対応

2023/10/26に公開

DrupalのJSONAPIの利用において、以下のようなクエリで、fieldのIDから、field_nameを取得しようとしたところ、結果が0件になりました。

https://xxx/jsonapi/field_config/field_config?fields[field_config--field_config]=label%2Cfield_name&filter[name-filter][condition][path]=field_name&filter[name-filter][condition][operator]=IN&filter[name-filter][condition][value][1]=field_xxx1&filter[name-filter][condition][value][2]=field_xxx2&filter[name-filter][condition][value][3]=field_xxx3&filter[bundle]=yyy

返却された結果のmetaの項目に、権限の問題が記載されていました。

{
    "jsonapi": {
        "version": "1.0",
        "meta": {
            "links": {
                "self": {
                    "href": "http://jsonapi.org/format/1.0/"
                }
            }
        }
    },
    "data": [],
    "meta": {
        "omitted": {
            "detail": "Some resources have been omitted because of insufficient authorization.",
            ...
        }
    },
    ...
}

そこで、以下の図にある通り、Field UIコンテンツ: フィールドの管理の権限を変更したところ、上記の権限の問題を解決することができました。

ただし、以下のような記載があるため、ご利用の際は十分に注意してください。

警告: 信頼できる役割のみに与えてください。この権限はセキュリティへの影響があります。

Discussion