public static function listOriginAccessIdentities()
{
if (!extension_loaded('openssl')) {
self::__triggerError(sprintf("S3::listOriginAccessIdentities(): [%s] %s", "CloudFront functionality requires SSL"), __FILE__, __LINE__);
return false;
}
self::$useSSL = true;
// CloudFront requires SSL
$rest = new S3Request('GET', '', '2010-11-01/origin-access-identity/cloudfront', 'cloudfront.amazonaws.com');
$rest = self::__getCloudFrontResponse($rest);
$useSSL = self::$useSSL;
if ($rest->error === false && $rest->code !== 200) {
$rest->error = array('code' => $rest->code, 'message' => 'Unexpected HTTP status');
}
if ($rest->error !== false) {
trigger_error(sprintf("S3::listOriginAccessIdentities(): [%s] %s", $rest->error['code'], $rest->error['message']), E_USER_WARNING);
return false;
}
if (isset($rest->body->CloudFrontOriginAccessIdentitySummary)) {
$identities = array();
foreach ($rest->body->CloudFrontOriginAccessIdentitySummary as $identity) {
if (isset($identity->S3CanonicalUserId)) {
$identities[(string) $identity->Id] = array('id' => (string) $identity->Id, 's3CanonicalUserId' => (string) $identity->S3CanonicalUserId);
}
}
return $identities;
}
return false;
}