Submit
Path:
~
/
/
opt
/
psa
/
admin
/
plib
/
modules
/
letsencrypt
/
vendor
/
aws
/
aws-sdk-php
/
src
/
File Content:
AwsClient.php
<?php namespace PleskLetsEncrypt\Aws; use PleskLetsEncrypt\Aws\Api\ApiProvider; use PleskLetsEncrypt\Aws\Api\DocModel; use PleskLetsEncrypt\Aws\Api\Service; use PleskLetsEncrypt\Aws\Auth\AuthSelectionMiddleware; use PleskLetsEncrypt\Aws\Auth\AuthSchemeResolverInterface; use PleskLetsEncrypt\Aws\EndpointDiscovery\EndpointDiscoveryMiddleware; use PleskLetsEncrypt\Aws\EndpointV2\EndpointProviderV2; use PleskLetsEncrypt\Aws\EndpointV2\EndpointV2Middleware; use PleskLetsEncrypt\Aws\Exception\AwsException; use PleskLetsEncrypt\Aws\Signature\SignatureProvider; use GuzzleHttp\Psr7\Uri; use Psr\Http\Message\RequestInterface; /** * Default AWS client implementation */ class AwsClient implements AwsClientInterface { use AwsClientTrait; /** @var array */ private $aliases; /** @var array */ private $config; /** @var string */ private $region; /** @var string */ private $signingRegionSet; /** @var string */ private $endpoint; /** @var Service */ private $api; /** @var callable */ private $signatureProvider; /** @var AuthSchemeResolverInterface */ private $authSchemeResolver; /** @var callable */ private $credentialProvider; /** @var callable */ private $tokenProvider; /** @var HandlerList */ private $handlerList; /** @var array*/ private $defaultRequestOptions; /** @var array*/ private $clientContextParams = []; /** @var array*/ protected $clientBuiltIns = []; /** @var EndpointProviderV2 | callable */ protected $endpointProvider; /** @var callable */ protected $serializer; /** * Get an array of client constructor arguments used by the client. * * @return array */ public static function getArguments() { return ClientResolver::getDefaultArguments(); } /** * The client constructor accepts the following options: * * - api_provider: (callable) An optional PHP callable that accepts a * type, service, and version argument, and returns an array of * corresponding configuration data. The type value can be one of api, * waiter, or paginator. * - credentials: * (Aws\Credentials\CredentialsInterface|array|bool|callable) Specifies * the credentials used to sign requests. Provide an * Aws\Credentials\CredentialsInterface object, an associative array of * "key", "secret", and an optional "token" key, `false` to use null * credentials, or a callable credentials provider used to create * credentials or return null. See Aws\Credentials\CredentialProvider for * a list of built-in credentials providers. If no credentials are * provided, the SDK will attempt to load them from the environment. * - token: * (Aws\Token\TokenInterface|array|bool|callable) Specifies * the token used to authorize requests. Provide an * Aws\Token\TokenInterface object, an associative array of * "token" and an optional "expires" key, `false` to use no * token, or a callable token provider used to create a * token or return null. See Aws\Token\TokenProvider for * a list of built-in token providers. If no token is * provided, the SDK will attempt to load one from the environment. * - csm: * (Aws\ClientSideMonitoring\ConfigurationInterface|array|callable) Specifies * the credentials used to sign requests. Provide an * Aws\ClientSideMonitoring\ConfigurationInterface object, a callable * configuration provider used to create client-side monitoring configuration, * `false` to disable csm, or an associative array with the following keys: * enabled: (bool) Set to true to enable client-side monitoring, defaults * to false; host: (string) the host location to send monitoring events to, * defaults to 127.0.0.1; port: (int) The port used for the host connection, * defaults to 31000; client_id: (string) An identifier for this project * - debug: (bool|array) Set to true to display debug information when * sending requests. Alternatively, you can provide an associative array * with the following keys: logfn: (callable) Function that is invoked * with log messages; stream_size: (int) When the size of a stream is * greater than this number, the stream data will not be logged (set to * "0" to not log any stream data); scrub_auth: (bool) Set to false to * disable the scrubbing of auth data from the logged messages; http: * (bool) Set to false to disable the "debug" feature of lower level HTTP * adapters (e.g., verbose curl output). * - stats: (bool|array) Set to true to gather transfer statistics on * requests sent. Alternatively, you can provide an associative array with * the following keys: retries: (bool) Set to false to disable reporting * on retries attempted; http: (bool) Set to true to enable collecting * statistics from lower level HTTP adapters (e.g., values returned in * GuzzleHttp\TransferStats). HTTP handlers must support an * `http_stats_receiver` option for this to have an effect; timer: (bool) * Set to true to enable a command timer that reports the total wall clock * time spent on an operation in seconds. * - disable_host_prefix_injection: (bool) Set to true to disable host prefix * injection logic for services that use it. This disables the entire * prefix injection, including the portions supplied by user-defined * parameters. Setting this flag will have no effect on services that do * not use host prefix injection. * - endpoint: (string) The full URI of the webservice. This is only * required when connecting to a custom endpoint (e.g., a local version * of S3). * - endpoint_discovery: (Aws\EndpointDiscovery\ConfigurationInterface, * Aws\CacheInterface, array, callable) Settings for endpoint discovery. * Provide an instance of Aws\EndpointDiscovery\ConfigurationInterface, * an instance Aws\CacheInterface, a callable that provides a promise for * a Configuration object, or an associative array with the following * keys: enabled: (bool) Set to true to enable endpoint discovery, false * to explicitly disable it, defaults to false; cache_limit: (int) The * maximum number of keys in the endpoints cache, defaults to 1000. * - endpoint_provider: (callable) An optional PHP callable that * accepts a hash of options including a "service" and "region" key and * returns NULL or a hash of endpoint data, of which the "endpoint" key * is required. See Aws\Endpoint\EndpointProvider for a list of built-in * providers. * - handler: (callable) A handler that accepts a command object, * request object and returns a promise that is fulfilled with an * Aws\ResultInterface object or rejected with an * Aws\Exception\AwsException. A handler does not accept a next handler * as it is terminal and expected to fulfill a command. If no handler is * provided, a default Guzzle handler will be utilized. * - http: (array, default=array(0)) Set to an array of SDK request * options to apply to each request (e.g., proxy, verify, etc.). * - http_handler: (callable) An HTTP handler is a function that * accepts a PSR-7 request object and returns a promise that is fulfilled * with a PSR-7 response object or rejected with an array of exception * data. NOTE: This option supersedes any provided "handler" option. * - idempotency_auto_fill: (bool|callable) Set to false to disable SDK to * populate parameters that enabled 'idempotencyToken' trait with a random * UUID v4 value on your behalf. Using default value 'true' still allows * parameter value to be overwritten when provided. Note: auto-fill only * works when cryptographically secure random bytes generator functions * (random_bytes, openssl_random_pseudo_bytes or mcrypt_create_iv) can be * found. You may also provide a callable source of random bytes. * - profile: (string) Allows you to specify which profile to use when * credentials are created from the AWS credentials file in your HOME * directory. This setting overrides the AWS_PROFILE environment * variable. Note: Specifying "profile" will cause the "credentials" key * to be ignored. * - region: (string, required) Region to connect to. See * http://docs.aws.amazon.com/general/latest/gr/rande.html for a list of * available regions. * - retries: (int, Aws\Retry\ConfigurationInterface, Aws\CacheInterface, * array, callable) Configures the retry mode and maximum number of * allowed retries for a client (pass 0 to disable retries). Provide an * integer for 'legacy' mode with the specified number of retries. * Otherwise provide an instance of Aws\Retry\ConfigurationInterface, an * instance of Aws\CacheInterface, a callable function, or an array with * the following keys: mode: (string) Set to 'legacy', 'standard' (uses * retry quota management), or 'adapative' (an experimental mode that adds * client-side rate limiting to standard mode); max_attempts (int) The * maximum number of attempts for a given request. * - scheme: (string, default=string(5) "https") URI scheme to use when * connecting connect. The SDK will utilize "https" endpoints (i.e., * utilize SSL/TLS connections) by default. You can attempt to connect to * a service over an unencrypted "http" endpoint by setting ``scheme`` to * "http". * - signature_provider: (callable) A callable that accepts a signature * version name (e.g., "v4"), a service name, and region, and * returns a SignatureInterface object or null. This provider is used to * create signers utilized by the client. See * Aws\Signature\SignatureProvider for a list of built-in providers * - signature_version: (string) A string representing a custom * signature version to use with a service (e.g., v4). Note that * per/operation signature version MAY override this requested signature * version. * - use_aws_shared_config_files: (bool, default=bool(true)) Set to false to * disable checking for shared config file in '~/.aws/config' and * '~/.aws/credentials'. This will override the AWS_CONFIG_FILE * environment variable. * - validate: (bool, default=bool(true)) Set to false to disable * client-side parameter validation. * - version: (string, required) The version of the webservice to * utilize (e.g., 2006-03-01). * - account_id_endpoint_mode: (string, default(preferred)) this option * decides whether credentials should resolve an accountId value, * which is going to be used as part of the endpoint resolution. * The valid values for this option are: * - preferred: when this value is set then, a warning is logged when * accountId is empty in the resolved identity. * - required: when this value is set then, an exception is thrown when * accountId is empty in the resolved identity. * - disabled: when this value is set then, the validation for if accountId * was resolved or not, is ignored. * - ua_append: (string, array) To pass custom user agent parameters. * - app_id: (string) an optional application specific identifier that can be set. * When set it will be appended to the User-Agent header of every request * in the form of App/{AppId}. This variable is sourced from environment * variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id. * See https://docs.aws.amazon.com/sdkref/latest/guide/settings-reference.html for * more information on environment variables and shared config settings. * * @param array $args Client configuration arguments. * * @throws \InvalidArgumentException if any required options are missing or * the service is not supported. */ public function __construct(array $args) { list($service, $exceptionClass) = $this->parseClass(); if (!isset($args['service'])) { $args['service'] = manifest($service)['endpoint']; } if (!isset($args['exception_class'])) { $args['exception_class'] = $exceptionClass; } $this->handlerList = new HandlerList(); $resolver = new ClientResolver(static::getArguments()); $config = $resolver->resolve($args, $this->handlerList); $this->api = $config['api']; $this->signatureProvider = $config['signature_provider']; $this->authSchemeResolver = $config['auth_scheme_resolver']; $this->endpoint = new Uri($config['endpoint']); $this->credentialProvider = $config['credentials']; $this->tokenProvider = $config['token']; $this->region = $config['region'] ?? null; $this->signingRegionSet = $config['sigv4a_signing_region_set'] ?? null; $this->config = $config['config']; $this->setClientBuiltIns($args, $config); $this->clientContextParams = $this->setClientContextParams($args); $this->defaultRequestOptions = $config['http']; $this->endpointProvider = $config['endpoint_provider']; $this->serializer = $config['serializer']; $this->addSignatureMiddleware($args); $this->addInvocationId(); $this->addEndpointParameterMiddleware($args); $this->addEndpointDiscoveryMiddleware($config, $args); $this->addRequestCompressionMiddleware($config); $this->loadAliases(); $this->addStreamRequestPayload(); $this->addRecursionDetection(); if ($this->isUseEndpointV2()) { $this->addEndpointV2Middleware(); } $this->addAuthSelectionMiddleware(); if (!\is_null($this->api->getMetadata('awsQueryCompatible'))) { $this->addQueryCompatibleInputMiddleware($this->api); $this->addQueryModeHeader(); } if (isset($args['with_resolved'])) { $args['with_resolved']($config); } $this->addUserAgentMiddleware($config); } public function getHandlerList() { return $this->handlerList; } public function getConfig($option = null) { return $option === null ? $this->config : $this->config[$option] ?? null; } public function getCredentials() { $fn = $this->credentialProvider; return $fn(); } public function getEndpoint() { return $this->endpoint; } public function getRegion() { return $this->region; } public function getApi() { return $this->api; } public function getCommand($name, array $args = []) { // Fail fast if the command cannot be found in the description. if (!isset($this->getApi()['operations'][$name])) { $name = \ucfirst($name); if (!isset($this->getApi()['operations'][$name])) { throw new \InvalidArgumentException("Operation not found: {$name}"); } } if (!isset($args['@http'])) { $args['@http'] = $this->defaultRequestOptions; } else { $args['@http'] += $this->defaultRequestOptions; } return new Command($name, $args, clone $this->getHandlerList()); } public function getEndpointProvider() { return $this->endpointProvider; } /** * Provides the set of service context parameter * key-value pairs used for endpoint resolution. * * @return array */ public function getClientContextParams() { return $this->clientContextParams; } /** * Provides the set of built-in keys and values * used for endpoint resolution * * @return array */ public function getClientBuiltIns() { return $this->clientBuiltIns; } public function __sleep() { throw new \RuntimeException('Instances of ' . static::class . ' cannot be serialized'); } /** * Get the signature_provider function of the client. * * @return callable */ public final function getSignatureProvider() { return $this->signatureProvider; } /** * Parse the class name and setup the custom exception class of the client * and return the "service" name of the client and "exception_class". * * @return array */ private function parseClass() { $klass = \get_class($this); if ($klass === __CLASS__) { return ['', AwsException::class]; } $service = \substr($klass, \strrpos($klass, '\\') + 1, -6); return [\strtolower($service), "PleskLetsEncrypt\\Aws\\{$service}\\Exception\\{$service}Exception"]; } private function addEndpointParameterMiddleware($args) { if (empty($args['disable_host_prefix_injection'])) { $list = $this->getHandlerList(); $list->appendBuild(EndpointParameterMiddleware::wrap($this->api), 'endpoint_parameter'); } } private function addEndpointDiscoveryMiddleware($config, $args) { $list = $this->getHandlerList(); if (!isset($args['endpoint'])) { $list->appendBuild(EndpointDiscoveryMiddleware::wrap($this, $args, $config['endpoint_discovery']), 'EndpointDiscoveryMiddleware'); } } private function addSignatureMiddleware(array $args) { $api = $this->getApi(); $provider = $this->signatureProvider; $signatureVersion = $this->config['signature_version']; $name = $this->config['signing_name']; $region = $this->config['signing_region']; $signingRegionSet = $this->signingRegionSet; if (isset($args['signature_version']) || isset($this->config['configured_signature_version'])) { $configuredSignatureVersion = \true; } else { $configuredSignatureVersion = \false; } $resolver = static function (CommandInterface $command) use($api, $provider, $name, $region, $signatureVersion, $configuredSignatureVersion, $signingRegionSet) { if (!$configuredSignatureVersion) { if (!empty($command['@context']['signing_region'])) { $region = $command['@context']['signing_region']; } if (!empty($command['@context']['signing_service'])) { $name = $command['@context']['signing_service']; } if (!empty($command['@context']['signature_version'])) { $signatureVersion = $command['@context']['signature_version']; } $authType = $api->getOperation($command->getName())['authtype']; switch ($authType) { case 'none': $signatureVersion = 'anonymous'; break; case 'v4-unsigned-body': $signatureVersion = 'v4-unsigned-body'; break; case 'bearer': $signatureVersion = 'bearer'; break; } } if ($signatureVersion === 'v4a') { $commandSigningRegionSet = !empty($command['@context']['signing_region_set']) ? \implode(', ', $command['@context']['signing_region_set']) : null; $region = $signingRegionSet ?? $commandSigningRegionSet ?? $region; } // Capture signature metric $command->getMetricsBuilder()->identifyMetricByValueAndAppend('signature', $signatureVersion); return SignatureProvider::resolve($provider, $signatureVersion, $name, $region); }; $this->handlerList->appendSign(Middleware::signer($this->credentialProvider, $resolver, $this->tokenProvider, $this->getConfig()), 'signer'); } private function addRequestCompressionMiddleware($config) { if (empty($config['disable_request_compression'])) { $list = $this->getHandlerList(); $list->appendBuild(RequestCompressionMiddleware::wrap($config), 'request-compression'); } } private function addQueryCompatibleInputMiddleware(Service $api) { $list = $this->getHandlerList(); $list->appendValidate(QueryCompatibleInputMiddleware::wrap($api), 'query-compatible-input'); } private function addQueryModeHeader() : void { $list = $this->getHandlerList(); $list->appendBuild(Middleware::mapRequest(function (RequestInterface $r) { return $r->withHeader('x-amzn-query-mode', \true); }), 'x-amzn-query-mode-header'); } private function addInvocationId() { // Add invocation id to each request $this->handlerList->prependSign(Middleware::invocationId(), 'invocation-id'); } private function loadAliases($file = null) { if (!isset($this->aliases)) { if (\is_null($file)) { $file = __DIR__ . '/data/aliases.json'; } $aliases = \PleskLetsEncrypt\Aws\load_compiled_json($file); $serviceId = $this->api->getServiceId(); $version = $this->getApi()->getApiVersion(); if (!empty($aliases['operations'][$serviceId][$version])) { $this->aliases = \array_flip($aliases['operations'][$serviceId][$version]); } } } private function addStreamRequestPayload() { $streamRequestPayloadMiddleware = StreamRequestPayloadMiddleware::wrap($this->api); $this->handlerList->prependSign($streamRequestPayloadMiddleware, 'StreamRequestPayloadMiddleware'); } private function addRecursionDetection() { // Add recursion detection header to requests // originating in supported Lambda runtimes $this->handlerList->appendBuild(Middleware::recursionDetection(), 'recursion-detection'); } private function addAuthSelectionMiddleware() { $list = $this->getHandlerList(); $list->prependBuild(AuthSelectionMiddleware::wrap($this->authSchemeResolver, $this->getApi()), 'auth-selection'); } private function addEndpointV2Middleware() { $list = $this->getHandlerList(); $endpointArgs = $this->getEndpointProviderArgs(); $list->prependBuild(EndpointV2Middleware::wrap($this->endpointProvider, $this->getApi(), $endpointArgs, $this->credentialProvider), 'endpoint-resolution'); } /** * Appends the user agent middleware. * This middleware MUST be appended after the * signature middleware `addSignatureMiddleware`, * so that metrics around signatures are properly * captured. * * @param $args * @return void */ private function addUserAgentMiddleware($args) { $this->getHandlerList()->appendSign(UserAgentMiddleware::wrap($args), 'user-agent'); } /** * Retrieves client context param definition from service model, * creates mapping of client context param names with client-provided * values. * * @return array */ private function setClientContextParams($args) { $api = $this->getApi(); $resolvedParams = []; if (!empty($paramDefinitions = $api->getClientContextParams())) { foreach ($paramDefinitions as $paramName => $paramValue) { if (isset($args[$paramName])) { $resolvedParams[$paramName] = $args[$paramName]; } } } return $resolvedParams; } /** * Retrieves and sets default values used for endpoint resolution. */ private function setClientBuiltIns($args, $resolvedConfig) { $builtIns = []; $config = $resolvedConfig['config']; $service = $args['service']; $builtIns['SDK::Endpoint'] = null; if (!empty($args['endpoint'])) { $builtIns['SDK::Endpoint'] = $args['endpoint']; } elseif (isset($config['configured_endpoint_url'])) { $builtIns['SDK::Endpoint'] = (string) $this->getEndpoint(); } $builtIns['AWS::Region'] = $this->getRegion(); $builtIns['AWS::UseFIPS'] = $config['use_fips_endpoint']->isUseFipsEndpoint(); $builtIns['AWS::UseDualStack'] = $config['use_dual_stack_endpoint']->isUseDualstackEndpoint(); if ($service === 's3' || $service === 's3control') { $builtIns['AWS::S3::UseArnRegion'] = $config['use_arn_region']->isUseArnRegion(); } if ($service === 's3') { $builtIns['AWS::S3::UseArnRegion'] = $config['use_arn_region']->isUseArnRegion(); $builtIns['AWS::S3::Accelerate'] = $config['use_accelerate_endpoint']; $builtIns['AWS::S3::ForcePathStyle'] = $config['use_path_style_endpoint']; $builtIns['AWS::S3::DisableMultiRegionAccessPoints'] = $config['disable_multiregion_access_points']; } $builtIns['AWS::Auth::AccountIdEndpointMode'] = $resolvedConfig['account_id_endpoint_mode']; $this->clientBuiltIns += $builtIns; } /** * Retrieves arguments to be used in endpoint resolution. * * @return array */ public function getEndpointProviderArgs() { return $this->normalizeEndpointProviderArgs(); } /** * Combines built-in and client context parameter values in * order of specificity. Client context parameter values supersede * built-in values. * * @return array */ private function normalizeEndpointProviderArgs() { $normalizedBuiltIns = []; foreach ($this->clientBuiltIns as $name => $value) { $normalizedName = \explode('::', $name); $normalizedName = $normalizedName[\count($normalizedName) - 1]; $normalizedBuiltIns[$normalizedName] = $value; } return \array_merge($normalizedBuiltIns, $this->getClientContextParams()); } protected function isUseEndpointV2() { return $this->endpointProvider instanceof EndpointProviderV2; } public static function emitDeprecationWarning() { \trigger_error("This method is deprecated. It will be removed in an upcoming release.", \E_USER_DEPRECATED); $phpVersion = \PHP_VERSION_ID; if ($phpVersion < 70205) { $phpVersionString = \phpversion(); @\trigger_error("This installation of the SDK is using PHP version" . " {$phpVersionString}, which will be deprecated on August" . " 15th, 2023. Please upgrade your PHP version to a minimum of" . " 7.2.5 before then to continue receiving updates to the AWS" . " SDK for PHP. To disable this warning, set" . " suppress_php_deprecation_warning to true on the client constructor" . " or set the environment variable AWS_SUPPRESS_PHP_DEPRECATION_WARNING" . " to true.", \E_USER_DEPRECATED); } } /** * Returns a service model and doc model with any necessary changes * applied. * * @param array $api Array of service data being documented. * @param array $docs Array of doc model data. * * @return array Tuple containing a [Service, DocModel] * * @internal This should only used to document the service API. * @codeCoverageIgnore */ public static function applyDocFilters(array $api, array $docs) { $aliases = \PleskLetsEncrypt\Aws\load_compiled_json(__DIR__ . '/data/aliases.json'); $serviceId = $api['metadata']['serviceId'] ?? ''; $version = $api['metadata']['apiVersion']; // Replace names for any operations with SDK aliases if (!empty($aliases['operations'][$serviceId][$version])) { foreach ($aliases['operations'][$serviceId][$version] as $op => $alias) { $api['operations'][$alias] = $api['operations'][$op]; $docs['operations'][$alias] = $docs['operations'][$op]; unset($api['operations'][$op], $docs['operations'][$op]); } } \ksort($api['operations']); return [new Service($api, ApiProvider::defaultProvider()), new DocModel($docs)]; } /** * @deprecated * @return static */ public static function factory(array $config = []) { return new static($config); } }
Submit
FILE
FOLDER
INFO
Name
Size
Permission
Action
ACMPCA
---
0755
ARCZonalShift
---
0755
AccessAnalyzer
---
0755
Account
---
0755
Acm
---
0755
Amplify
---
0755
AmplifyBackend
---
0755
AmplifyUIBuilder
---
0755
Api
---
0755
ApiGateway
---
0755
ApiGatewayManagementApi
---
0755
ApiGatewayV2
---
0755
AppConfig
---
0755
AppConfigData
---
0755
AppFabric
---
0755
AppIntegrationsService
---
0755
AppMesh
---
0755
AppRegistry
---
0755
AppRunner
---
0755
AppSync
---
0755
AppTest
---
0755
Appflow
---
0755
ApplicationAutoScaling
---
0755
ApplicationCostProfiler
---
0755
ApplicationDiscoveryService
---
0755
ApplicationInsights
---
0755
ApplicationSignals
---
0755
Appstream
---
0755
Arn
---
0755
Artifact
---
0755
Athena
---
0755
AuditManager
---
0755
AugmentedAIRuntime
---
0755
Auth
---
0755
AutoScaling
---
0755
AutoScalingPlans
---
0755
B2bi
---
0755
BCMDataExports
---
0755
BCMPricingCalculator
---
0755
Backup
---
0755
BackupGateway
---
0755
BackupSearch
---
0755
Batch
---
0755
Bedrock
---
0755
BedrockAgent
---
0755
BedrockAgentRuntime
---
0755
BedrockDataAutomation
---
0755
BedrockDataAutomationRuntime
---
0755
BedrockRuntime
---
0755
Billing
---
0755
BillingConductor
---
0755
Braket
---
0755
Budgets
---
0755
Chatbot
---
0755
Chime
---
0755
ChimeSDKIdentity
---
0755
ChimeSDKMediaPipelines
---
0755
ChimeSDKMeetings
---
0755
ChimeSDKMessaging
---
0755
ChimeSDKVoice
---
0755
CleanRooms
---
0755
CleanRoomsML
---
0755
ClientSideMonitoring
---
0755
Cloud9
---
0755
CloudControlApi
---
0755
CloudDirectory
---
0755
CloudFormation
---
0755
CloudFront
---
0755
CloudFrontKeyValueStore
---
0755
CloudHSMV2
---
0755
CloudHsm
---
0755
CloudSearch
---
0755
CloudSearchDomain
---
0755
CloudTrail
---
0755
CloudTrailData
---
0755
CloudWatch
---
0755
CloudWatchEvents
---
0755
CloudWatchEvidently
---
0755
CloudWatchLogs
---
0755
CloudWatchRUM
---
0755
CodeArtifact
---
0755
CodeBuild
---
0755
CodeCatalyst
---
0755
CodeCommit
---
0755
CodeConnections
---
0755
CodeDeploy
---
0755
CodeGuruProfiler
---
0755
CodeGuruReviewer
---
0755
CodeGuruSecurity
---
0755
CodePipeline
---
0755
CodeStarNotifications
---
0755
CodeStarconnections
---
0755
CognitoIdentity
---
0755
CognitoIdentityProvider
---
0755
CognitoSync
---
0755
Comprehend
---
0755
ComprehendMedical
---
0755
ComputeOptimizer
---
0755
ConfigService
---
0755
Configuration
---
0755
Connect
---
0755
ConnectCampaignService
---
0755
ConnectCampaignsV2
---
0755
ConnectCases
---
0755
ConnectContactLens
---
0755
ConnectParticipant
---
0755
ConnectWisdomService
---
0755
ControlCatalog
---
0755
ControlTower
---
0755
CostExplorer
---
0755
CostOptimizationHub
---
0755
CostandUsageReportService
---
0755
Credentials
---
0755
Crypto
---
0755
CustomerProfiles
---
0755
DAX
---
0755
DLM
---
0755
DSQL
---
0755
DataExchange
---
0755
DataPipeline
---
0755
DataSync
---
0755
DataZone
---
0755
DatabaseMigrationService
---
0755
Deadline
---
0755
DefaultsMode
---
0755
Detective
---
0755
DevOpsGuru
---
0755
DeviceFarm
---
0755
DirectConnect
---
0755
DirectoryService
---
0755
DirectoryServiceData
---
0755
DocDB
---
0755
DocDBElastic
---
0755
DynamoDb
---
0755
DynamoDbStreams
---
0755
EBS
---
0755
EC2InstanceConnect
---
0755
ECRPublic
---
0755
EKS
---
0755
EKSAuth
---
0755
EMRContainers
---
0755
EMRServerless
---
0755
Ec2
---
0755
Ecr
---
0755
Ecs
---
0755
Efs
---
0755
ElastiCache
---
0755
ElasticBeanstalk
---
0755
ElasticLoadBalancing
---
0755
ElasticLoadBalancingV2
---
0755
ElasticTranscoder
---
0755
ElasticsearchService
---
0755
Emr
---
0755
Endpoint
---
0755
EndpointDiscovery
---
0755
EndpointV2
---
0755
EntityResolution
---
0755
EventBridge
---
0755
Exception
---
0755
FIS
---
0755
FMS
---
0755
FSx
---
0755
FinSpaceData
---
0755
Firehose
---
0755
ForecastQueryService
---
0755
ForecastService
---
0755
FraudDetector
---
0755
FreeTier
---
0755
GameLift
---
0755
GameLiftStreams
---
0755
GeoMaps
---
0755
GeoPlaces
---
0755
GeoRoutes
---
0755
Glacier
---
0755
GlobalAccelerator
---
0755
Glue
---
0755
GlueDataBrew
---
0755
Greengrass
---
0755
GreengrassV2
---
0755
GroundStation
---
0755
GuardDuty
---
0755
Handler
---
0755
Health
---
0755
HealthLake
---
0755
IVS
---
0755
IVSRealTime
---
0755
Iam
---
0755
Identity
---
0755
IdentityStore
---
0755
ImportExport
---
0755
Inspector
---
0755
Inspector2
---
0755
InspectorScan
---
0755
InternetMonitor
---
0755
Invoicing
---
0755
IoTAnalytics
---
0755
IoTDeviceAdvisor
---
0755
IoTEvents
---
0755
IoTEventsData
---
0755
IoTFleetHub
---
0755
IoTFleetWise
---
0755
IoTJobsDataPlane
---
0755
IoTManagedIntegrations
---
0755
IoTSecureTunneling
---
0755
IoTSiteWise
---
0755
IoTThingsGraph
---
0755
IoTTwinMaker
---
0755
IoTWireless
---
0755
Iot
---
0755
IotDataPlane
---
0755
Kafka
---
0755
KafkaConnect
---
0755
KendraRanking
---
0755
Keyspaces
---
0755
Kinesis
---
0755
KinesisAnalytics
---
0755
KinesisAnalyticsV2
---
0755
KinesisVideo
---
0755
KinesisVideoArchivedMedia
---
0755
KinesisVideoMedia
---
0755
KinesisVideoSignalingChannels
---
0755
KinesisVideoWebRTCStorage
---
0755
Kms
---
0755
LakeFormation
---
0755
Lambda
---
0755
LaunchWizard
---
0755
LexModelBuildingService
---
0755
LexModelsV2
---
0755
LexRuntimeService
---
0755
LexRuntimeV2
---
0755
LicenseManager
---
0755
LicenseManagerLinuxSubscriptions
---
0755
LicenseManagerUserSubscriptions
---
0755
Lightsail
---
0755
LocationService
---
0755
LookoutEquipment
---
0755
LookoutMetrics
---
0755
LookoutforVision
---
0755
MQ
---
0755
MTurk
---
0755
MWAA
---
0755
MachineLearning
---
0755
Macie2
---
0755
MailManager
---
0755
MainframeModernization
---
0755
ManagedBlockchain
---
0755
ManagedBlockchainQuery
---
0755
ManagedGrafana
---
0755
MarketplaceAgreement
---
0755
MarketplaceCatalog
---
0755
MarketplaceCommerceAnalytics
---
0755
MarketplaceDeployment
---
0755
MarketplaceEntitlementService
---
0755
MarketplaceMetering
---
0755
MarketplaceReporting
---
0755
MediaConnect
---
0755
MediaConvert
---
0755
MediaLive
---
0755
MediaPackage
---
0755
MediaPackageV2
---
0755
MediaPackageVod
---
0755
MediaStore
---
0755
MediaStoreData
---
0755
MediaTailor
---
0755
MedicalImaging
---
0755
MemoryDB
---
0755
MigrationHub
---
0755
MigrationHubConfig
---
0755
MigrationHubOrchestrator
---
0755
MigrationHubRefactorSpaces
---
0755
MigrationHubStrategyRecommendations
---
0755
Multipart
---
0755
Neptune
---
0755
NeptuneGraph
---
0755
Neptunedata
---
0755
NetworkFirewall
---
0755
NetworkFlowMonitor
---
0755
NetworkManager
---
0755
NetworkMonitor
---
0755
Notifications
---
0755
NotificationsContacts
---
0755
OAM
---
0755
OSIS
---
0755
ObservabilityAdmin
---
0755
Omics
---
0755
OpenSearchServerless
---
0755
OpenSearchService
---
0755
OpsWorks
---
0755
OpsWorksCM
---
0755
Organizations
---
0755
Outposts
---
0755
PCS
---
0755
PI
---
0755
Panorama
---
0755
PartnerCentralSelling
---
0755
PaymentCryptography
---
0755
PaymentCryptographyData
---
0755
PcaConnectorAd
---
0755
PcaConnectorScep
---
0755
Personalize
---
0755
PersonalizeEvents
---
0755
PersonalizeRuntime
---
0755
Pinpoint
---
0755
PinpointEmail
---
0755
PinpointSMSVoice
---
0755
PinpointSMSVoiceV2
---
0755
Pipes
---
0755
Polly
---
0755
Pricing
---
0755
PrivateNetworks
---
0755
PrometheusService
---
0755
Proton
---
0755
QApps
---
0755
QBusiness
---
0755
QConnect
---
0755
QLDB
---
0755
QLDBSession
---
0755
QuickSight
---
0755
RAM
---
0755
RDSDataService
---
0755
Rds
---
0755
RecycleBin
---
0755
Redshift
---
0755
RedshiftDataAPIService
---
0755
RedshiftServerless
---
0755
Rekognition
---
0755
Repostspace
---
0755
ResilienceHub
---
0755
ResourceExplorer2
---
0755
ResourceGroups
---
0755
ResourceGroupsTaggingAPI
---
0755
Retry
---
0755
RoboMaker
---
0755
RolesAnywhere
---
0755
Route53
---
0755
Route53Domains
---
0755
Route53Profiles
---
0755
Route53RecoveryCluster
---
0755
Route53RecoveryControlConfig
---
0755
Route53RecoveryReadiness
---
0755
Route53Resolver
---
0755
S3
---
0755
S3Control
---
0755
S3Outposts
---
0755
S3Tables
---
0755
SSMContacts
---
0755
SSMIncidents
---
0755
SSMQuickSetup
---
0755
SSO
---
0755
SSOAdmin
---
0755
SSOOIDC
---
0755
SageMaker
---
0755
SageMakerFeatureStoreRuntime
---
0755
SageMakerGeospatial
---
0755
SageMakerMetrics
---
0755
SageMakerRuntime
---
0755
SagemakerEdgeManager
---
0755
SavingsPlans
---
0755
Scheduler
---
0755
Schemas
---
0755
Script
---
0755
SecretsManager
---
0755
SecurityHub
---
0755
SecurityIR
---
0755
SecurityLake
---
0755
ServerlessApplicationRepository
---
0755
ServiceCatalog
---
0755
ServiceDiscovery
---
0755
ServiceQuotas
---
0755
Ses
---
0755
SesV2
---
0755
Sfn
---
0755
Shield
---
0755
Signature
---
0755
SimSpaceWeaver
---
0755
Sms
---
0755
SnowBall
---
0755
SnowDeviceManagement
---
0755
Sns
---
0755
SocialMessaging
---
0755
Sqs
---
0755
Ssm
---
0755
SsmSap
---
0755
StorageGateway
---
0755
Sts
---
0755
SupplyChain
---
0755
Support
---
0755
SupportApp
---
0755
Swf
---
0755
Synthetics
---
0755
TaxSettings
---
0755
Textract
---
0755
TimestreamInfluxDB
---
0755
TimestreamQuery
---
0755
TimestreamWrite
---
0755
Tnb
---
0755
Token
---
0755
TranscribeService
---
0755
Transfer
---
0755
Translate
---
0755
TrustedAdvisor
---
0755
VPCLattice
---
0755
VerifiedPermissions
---
0755
VoiceID
---
0755
WAFV2
---
0755
Waf
---
0755
WafRegional
---
0755
WellArchitected
---
0755
WorkDocs
---
0755
WorkMail
---
0755
WorkMailMessageFlow
---
0755
WorkSpaces
---
0755
WorkSpacesThinClient
---
0755
WorkSpacesWeb
---
0755
XRay
---
0755
data
---
0755
drs
---
0755
finspace
---
0755
imagebuilder
---
0755
ivschat
---
0755
kendra
---
0755
mgn
---
0755
signer
---
0755
AbstractConfigurationProvider.php
4449 bytes
0644
AwsClient.php
28820 bytes
0644
AwsClientInterface.php
5550 bytes
0644
AwsClientTrait.php
2656 bytes
0644
CacheInterface.php
771 bytes
0644
ClientResolver.php
51293 bytes
0644
Command.php
3384 bytes
0644
CommandInterface.php
961 bytes
0644
CommandPool.php
5293 bytes
0644
ConfigurationProviderInterface.php
264 bytes
0644
DoctrineCacheAdapter.php
1203 bytes
0644
EndpointParameterMiddleware.php
2654 bytes
0644
HandlerList.php
13662 bytes
0644
HasDataTrait.php
1505 bytes
0644
HasMonitoringEventsTrait.php
884 bytes
0644
HashInterface.php
547 bytes
0644
HashingStream.php
1577 bytes
0644
History.php
3933 bytes
0644
IdempotencyTokenMiddleware.php
3723 bytes
0644
InputValidationMiddleware.php
2385 bytes
0644
JsonCompiler.php
495 bytes
0644
LruArrayCache.php
2286 bytes
0644
MetricsBuilder.php
13747 bytes
0644
Middleware.php
15138 bytes
0644
MockHandler.php
4125 bytes
0644
MonitoringEventsInterface.php
756 bytes
0644
MultiRegionClient.php
8004 bytes
0644
PhpHash.php
1798 bytes
0644
PresignUrlMiddleware.php
4380 bytes
0644
Psr16CacheAdapter.php
585 bytes
0644
PsrCacheAdapter.php
753 bytes
0644
QueryCompatibleInputMiddleware.php
5909 bytes
0644
RequestCompressionMiddleware.php
4784 bytes
0644
ResponseContainerInterface.php
263 bytes
0644
Result.php
1201 bytes
0644
ResultInterface.php
1385 bytes
0644
ResultPaginator.php
6153 bytes
0644
RetryMiddleware.php
7917 bytes
0644
RetryMiddlewareV2.php
10723 bytes
0644
Sdk.php
71606 bytes
0644
StreamRequestPayloadMiddleware.php
2495 bytes
0644
TraceMiddleware.php
11155 bytes
0644
UserAgentMiddleware.php
6302 bytes
0644
Waiter.php
9152 bytes
0644
WrappedHttpHandler.php
6407 bytes
0644
functions.php
14298 bytes
0644
N4ST4R_ID | Naxtarrr