【问题标题】:Get resource list from OpenAM从 OpenAM 获取资源列表
【发布时间】:2017-09-04 14:17:06
【问题描述】:

我们正在使用 OpenAM(强制 12)及其 ACL 策略决策。我们如何通过 REST API 或 Client SDK 获取资源列表(Uri+verb)?我们使用 SDK 添加了一些补充 REST,我们也可以添加资源列表。

【问题讨论】:

    标签: openam opensso forgerock


    【解决方案1】:

    使用以下IP可以获得完整的数据

    Get    -  http://youurl/openam/xacml/policies
    Header -  "iplanetDirectoryPro" = "Token value"
    

    之后,您需要针对“应用程序”过滤“资源”。

    function get_resources() {
        $resources = array();
        if(isset($_SESSION['OpenAmSession']['sso_token']) || !empty($_SESSION['OpenAmSession']['sso_token'])) {
            $curl = new Curl();
            $curl->setHeader('iPlanetDirectoryPro', $_SESSION['OpenAmSession']['sso_token']);
            $curl->setHeader('Content-Type', 'application/json');
            $curl->post(OPENAM_BASEURL.'/json/policies?_action=evaluate', array(
                                'resources' => array("your URL"),
                                'application' => 'Application Name',
            ));
            if ($curl->error) {
                //echo $curl->error_message;
            } else {
                if(isset($curl->response[0]->attributes->resources)) {
                    $resources = $curl->response[0]->attributes->resources; 
                }
            }
        }
        return $resources;
    }
    

    【讨论】:

      猜你喜欢
      • 2012-10-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-24
      • 2018-10-28
      相关资源
      最近更新 更多