Generating S3 access keys in WHMCS
You can generate a new or additional access key pair with the ostor-users
service and the following parameters: emailAddress
specifying the user email address, genKey
. WHMCS generates a new key pair when you click Generate Access Key. Create a file S3_generateAccessKey.php with the following contents:
<?php // Load configuration and libraries. require('../../includes/staas_scripts/S3_addClientNote.php'); require('../../includes/staas_scripts/S3_getClient.php'); require('../../includes/staas_scripts/S3_getConfig.php'); require('../../includes/staas_scripts/S3_requestCurl.php'); require('../../init.php'); // Generate s3 access key pair. function S3_generateAccessKey($userid) { // Load configuration. $s3_config = s3_getConfig(); // Get whmcs user email. $s3_whmcs = S3_getClient($userid, $s3_config['whmcs_username']); // Generate s3 key pair. $s3_client = S3_requestCurl( $s3_config['s3_key'], $s3_config['s3_secret'], $s3_config['s3_gateway'], "/?ostor-users&emailAddress=" . $s3_whmcs['email'] . "&genKey", "POST" ); // Add note with the s3 access key and s3 secret. S3_addClientNote( $s3_whmcs['userid'], $s3_config['whmcs_username'], $s3_client['UserId'], $s3_client['AWSAccessKeys']['0']['AWSAccessKeyId'], $s3_client['AWSAccessKeys']['0']['AWSSecretAccessKey'] ); // Redirect back. header('Location: ' . $_SERVER['HTTP_REFERER']); } // Call function. S3_generateAccessKey($_GET['userid']); ?>