예제 #1
0
 private function createClient()
 {
     Utils::log('Authenticate');
     $secret = array('username' => Utils::getEnvVar(Enum::ENV_USERNAME), 'apiKey' => Utils::getEnvVar(Enum::ENV_API_KEY));
     $identityEndpoint = Utils::getIdentityEndpoint();
     // Do connection stuff
     $client = new Rackspace($identityEndpoint, $secret);
     $client->setUserAgent($client->getUserAgent() . '/' . Enum::USER_AGENT);
     // enable logging
     if ($this->debugMode) {
         $client->addSubscriber(LogPlugin::getDebugPlugin());
     }
     $client->authenticate();
     Utils::logf('   Using identity endpoint: %s', $identityEndpoint);
     Utils::logf('   Using region: %s', Utils::getRegion());
     Utils::logf('   Token generated: %s', (string) $client->getToken());
     return $client;
 }
<?php

/**
 * Copyright 2012-2014 Rackspace US, Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
require dirname(__DIR__) . '/../vendor/autoload.php';
use OpenCloud\Rackspace;
// You can replace {authUrl} with Rackspace::US_IDENTITY_ENDPOINT or similar
$client = new Rackspace('{authUrl}', array('username' => '{username}', 'apiKey' => '{apiKey}'));
// Authenticate with the above credentials
$client->authenticate();
// Retrieve token ID
echo $client->getToken();