【发布时间】:2019-04-10 12:43:29
【问题描述】:
我使用带有标头身份验证的 Qlik Sense,但由于某种原因,当我运行对 qrs/apps/full?Xrftoken=lskadjfalkjd 的请求时,我只能获得公共应用程序。 如何设置用户属性以检索用户的所有应用?
下面是我在php中植入qlik请求:
private static function getRequestHeaders($email)
{
$user = AuthClass::getUser();
$id = $user['UserId'];
$dir = $user['UserDirectory'];
$atts = $user['Attributes'];
$securityHeaders = 'SecureRequest=true; Context=AppAccess;';
foreach ($atts as $attr)
{
$key = key($attr);
$val = $attr[$key];
$securityHeaders .= "{$key}={$val}; ";
}
return [
'headers' =>
[
'X-Qlik-xrfkey: ' . self::$xrfToken,
'hdr-usr: Users\\' . $email,
'Accept: application/json',
'Content-Type: application/json',
"X-Qlik-Security: $securityHeaders",
"X-Qlik-User: UserDirectory={$dir};UserId={$id}",
]
];
}
$res = CurlHelper::get(
'server/qps/app/full?Xrftoken=039498543',
self::getRequestHeaders($email)
);
【问题讨论】:
标签: php authentication header qliksense