【问题标题】:Keycloak: Unable to get RPT using resource nameKeycloak:无法使用资源名称获取 RPT
【发布时间】:2019-04-09 08:08:22
【问题描述】:

我正在尝试仅使用资源名称在没有许可票的情况下获取 RPT。虽然此方法在使用策略时有效,但它似乎不适用于通过帐户页面共享资源的用户(返回拒绝访问)。由于某种原因,当用户 A 与用户 B 共享资源时,用户 B 只有在以下情况下才能获得该资源的 RPT:

a) 请求他的所有权限

b) 按 id(不是名称)请求特定权限

这是预期的行为吗?如果是这样,我怎样才能克服这个问题并且仍然只使用资源名称?

通过资源名称获取 RPT(不适用于共享):

    curl "$PROTOCOL://$HOST:$PORT/auth/realms/$REALM/protocol/openid-connect/token" \
    -H "Authorization: Bearer $ACCESS_TOKEN" \
    --data "grant_type=urn:ietf:params:oauth:grant-type:uma-ticket&permission=$RESOURCE_NAME&audience=$RESOURCE_CLIENT_ID"

通过资源 id 获取 RPT(与共享一起使用):

    curl "$PROTOCOL://$HOST:$PORT/auth/realms/$REALM/protocol/openid-connect/token" \
    -H "Authorization: Bearer $ACCESS_TOKEN" \
    --data "grant_type=urn:ietf:params:oauth:grant-type:uma-ticket&permission=$RESOURCE_ID&audience=$RESOURCE_CLIENT_ID"

获取所有资源的 RPT(适用于共享):

    curl "$PROTOCOL://$HOST:$PORT/auth/realms/$REALM/protocol/openid-connect/token" \
    -H "Authorization: Bearer $ACCESS_TOKEN" \
    --data "grant_type=urn:ietf:params:oauth:grant-type:uma-ticket&audience=$RESOURCE_CLIENT_ID"

【问题讨论】:

    标签: keycloak jboss-tools


    【解决方案1】:

    此问题已在 6.0 版中修复

    【讨论】:

      猜你喜欢
      • 2021-07-15
      • 1970-01-01
      • 2015-01-30
      • 2015-10-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多