%PDF- %PDF-
Server IP : 37.220.80.31 / Your IP : 18.221.173.72 Web Server : Apache/2.4.52 (Ubuntu) System : Linux 3051455-guretool.twc1.net 5.15.0-107-generic #117-Ubuntu SMP Fri Apr 26 12:26:49 UTC 2024 x86_64 User : www-root ( 1010) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/www-root/data/www/dev.artlot24.ru/bitrix/modules/clouds/classes/general/ |
Upload File : |
<?php class CCloudSecurityService_HotBox { /* @var $service CCloudStorageService_HotBox */ protected $service = null; protected $arBucket = false; function __construct() { $this->service = CCloudStorageService_HotBox::GetObjectInstance(); } function GetObject() { return new CCloudSecurityService_HotBox(); } function GetID() { return "hotbox_ss"; } function GetName() { return "HotBox Security Token Service"; } function SetBucketArray($arBucket) { $this->arBucket = $arBucket; } 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; } } function ListPrefixKeys($namePrefix = '') { $result = array(); $marker = ''; while(true) { $response = $this->service->SendRequest( $this->arBucket["SETTINGS"], 'GET', $this->arBucket["BUCKET"], '/', '?pak=&max-keys=50&marker='.urlencode($marker).'&name-prefix='.urlencode($namePrefix) ); if ( $this->service->GetLastRequestStatus() == 200 && is_array($response) && isset($response["ListPrefixKeysResult"]) && is_array($response["ListPrefixKeysResult"]) && isset($response["ListPrefixKeysResult"]["#"]) && is_array($response["ListPrefixKeysResult"]["#"]) ) { $lastKey = null; if( isset($response["ListPrefixKeysResult"]["#"]["Contents"]) && is_array($response["ListPrefixKeysResult"]["#"]["Contents"]) ) { foreach($response["ListPrefixKeysResult"]["#"]["Contents"] as $a) { $last_key = $user_name = $a["#"]["UserName"][0]["#"]; $result[$user_name] = $a["#"]["Prefix"][0]["#"]; } } if( isset($response["ListPrefixKeysResult"]["#"]["IsTruncated"]) && is_array($response["ListPrefixKeysResult"]["#"]["IsTruncated"]) && $response["ListPrefixKeysResult"]["#"]["IsTruncated"][0]["#"] === "true" ) { if (isset($last_key)) { $marker = $last_key; continue; } } } break; } return $result; } function IsUserExists($UserName) { $users = $this->ListPrefixKeys($UserName); return isset($users[$UserName]); } function DeletePrefixKey($UserName, $prefix) { $response = $this->service->SendRequest( $this->arBucket["SETTINGS"], 'DELETE', $this->arBucket["BUCKET"], '/', '?pak=&prefix='.urlencode($prefix).'&username='.urlencode($UserName) ); return $this->service->GetLastRequestStatus() === 200; } }