• Модуль: clouds
  • Путь к файлу: ~/bitrix/modules/clouds/classes/general/security_service_hotbox.php
  • Класс: CCloudSecurityService_HotBox
  • Вызов: CCloudSecurityService_HotBox::CreatePrefixKey
function CreatePrefixKey($UserName, $Prefix)
{
	$response = $this->service->SendRequest(
		$this->arBucket["SETTINGS"],
		'PUT',
		$this->arBucket["BUCKET"],
		'/',
		'?pak=&username='.urlencode($UserName).'&prefix='.urlencode($UserName)
	);

	if (
		is_array($response)
		&& isset($response["CreatePrefixKeyResult"])
		&& is_array($response["CreatePrefixKeyResult"])
		&& isset($response["CreatePrefixKeyResult"]["#"])
		&& is_array($response["CreatePrefixKeyResult"]["#"])
	)
	{
		$Credentials = $response["CreatePrefixKeyResult"]["#"];

		if (
			isset($Credentials["AccessKey"])
			&& is_array($Credentials["AccessKey"])
			&& isset($Credentials["AccessKey"][0])
			&& is_array($Credentials["AccessKey"][0])
			&& isset($Credentials["AccessKey"][0]["#"])
		)
			$AccessKeyId = $Credentials["AccessKey"][0]["#"];
		else
			return 1;

		if (
			isset($Credentials["SecretKey"])
			&& is_array($Credentials["SecretKey"])
			&& isset($Credentials["SecretKey"][0])
			&& is_array($Credentials["SecretKey"][0])
			&& isset($Credentials["SecretKey"][0]["#"])
		)
			$SecretAccessKey = $Credentials["SecretKey"][0]["#"];
		else
			return 2;

		return array(
			"ACCESS_KEY" => $AccessKeyId,
			"SECRET_KEY" => $SecretAccessKey,
		);
	}
	else
	{
		return false;
	}
}