OXIESEC PANEL
- Current Dir:
/
/
var
/
www
/
cream
/
Xpress
/
vendor
/
aws
/
aws-sdk-php
/
tests
/
Credentials
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
05/19/2025 10:07:17 AM
rwxr-xr-x
📄
AssumeRoleCredentialProviderTest.php
4.04 KB
05/19/2025 10:07:17 AM
rw-r--r--
📄
AssumeRoleWithWebIdentityCredentialProviderTest.php
13.7 KB
05/19/2025 10:07:17 AM
rw-r--r--
📄
CredentialProviderTest.php
67.3 KB
05/19/2025 10:07:17 AM
rw-r--r--
📄
CredentialsTest.php
2.21 KB
05/19/2025 10:07:17 AM
rw-r--r--
📄
CredentialsUtilsTest.php
1.49 KB
05/19/2025 10:07:17 AM
rw-r--r--
📄
EcsCredentialProviderTest.php
20.55 KB
05/19/2025 10:07:17 AM
rw-r--r--
📄
InstanceProfileProviderTest.php
62.99 KB
05/19/2025 10:07:17 AM
rw-r--r--
📁
fixtures
-
03/05/2025 11:00:23 AM
rwxr-xr-x
Editing: AssumeRoleCredentialProviderTest.php
Close
<?php namespace Aws\Test\Credentials; use Aws\Credentials\AssumeRoleCredentialProvider; use Aws\Credentials\Credentials; use Aws\Exception\AwsException; use Aws\Result; use Aws\Sts\StsClient; use Aws\Api\DateTimeResult; use GuzzleHttp\Promise; use GuzzleHttp\Promise\RejectedPromise; use Aws\Test\UsesServiceTrait; use Yoast\PHPUnitPolyfills\TestCases\TestCase; /** * @covers \Aws\Credentials\AssumeRoleCredentialProvider */ class AssumeRoleCredentialProviderTest extends TestCase { const SAMPLE_ROLE_ARN = 'arn:aws:iam::012345678910:role/role_name'; use UsesServiceTrait; /** * @dataProvider insufficientArguments * * @param array $config */ public function testEnsureSourceProfileProvidedForAssumeRole($config) { $this->expectExceptionMessage("Missing required 'AssumeRoleCredentialProvider' configuration option:"); $this->expectException(\InvalidArgumentException::class); new AssumeRoleCredentialProvider($config); } /** * @dataProvider insufficientArguments */ public function insufficientArguments() { $client = [ 'client' => new StsClient([ 'region' => 'us-west-2', 'version' => 'latest', 'credentials' => new Credentials('foo', 'bar') ]) ]; $params = [ 'assume_role_params' => [ 'RoleArn' => self::SAMPLE_ROLE_ARN, 'RoleSessionName' => 'test_session', ] ]; return [ [ $client ], [ $params ], ]; } public function testCanLoadAssumeRoleCredentials() { $result = [ 'Credentials' => [ 'AccessKeyId' => 'foo', 'SecretAccessKey' => 'bar', 'SessionToken' => null, 'Expiration' => DateTimeResult::fromEpoch(time() + 10) ], 'AssumedRoleUser' => [ 'AssumedRoleId' => 'ARXXXXXXXXXXXXXXXXXXX:test_session', 'Arn' => self::SAMPLE_ROLE_ARN . "/test_session" ] ]; $sts = $this->getTestClient('Sts'); $sts->getHandlerList()->setHandler( function ($c, $r) use ($result) { return Promise\Create::promiseFor(new Result($result)); } ); $args['client'] = $sts; $args['assume_role_params'] = [ 'RoleArn' => self::SAMPLE_ROLE_ARN, 'RoleSessionName' => 'test_session', ]; $provider = new AssumeRoleCredentialProvider($args); $creds = $provider()->wait(); $this->assertSame('foo', $creds->getAccessKeyId()); $this->assertSame('bar', $creds->getSecretKey()); $this->assertNull($creds->getSecurityToken()); $this->assertIsInt($creds->getExpiration()); $this->assertFalse($creds->isExpired()); } public function testThrowsExceptionWhenRetrievingAssumeRoleCredentialFails() { $this->expectExceptionMessage("Error in retrieving assume role credentials."); $this->expectException(\Aws\Exception\CredentialsException::class); $sts = new StsClient([ 'region' => 'us-west-2', 'version' => 'latest', 'credentials' => new Credentials('foo', 'bar'), 'http_handler' => function () { return new RejectedPromise([ 'connection_error' => false, 'exception' => $this->getMockBuilder(AwsException::class) ->disableOriginalConstructor() ->getMock(), 'result' => null, ]); } ]); $args['client'] = $sts; $args['assume_role_params'] = [ 'RoleArn' => self::SAMPLE_ROLE_ARN, 'RoleSessionName' => 'test_session', ]; $provider = new AssumeRoleCredentialProvider($args); $provider()->wait(); } }