Class InternalAwsSecurityCredentialsSupplier

  • All Implemented Interfaces:
    AwsSecurityCredentialsSupplier, java.io.Serializable

    class InternalAwsSecurityCredentialsSupplier
    extends java.lang.Object
    implements AwsSecurityCredentialsSupplier
    Internal provider for retrieving AWS security credentials for AwsCredentials to exchange for GCP access tokens. The credentials are retrieved either via environment variables or metadata endpoints.
    • Constructor Detail

      • InternalAwsSecurityCredentialsSupplier

        InternalAwsSecurityCredentialsSupplier​(AwsCredentialSource awsCredentialSource,
                                               EnvironmentProvider environmentProvider,
                                               HttpTransportFactory transportFactory)
        Constructor for InternalAwsSecurityCredentialsProvider
        Parameters:
        awsCredentialSource - the credential source to use.
        environmentProvider - the environment provider to use for environment variables.
        transportFactory - the transport factory to use for metadata requests.
    • Method Detail

      • canRetrieveRegionFromEnvironment

        private boolean canRetrieveRegionFromEnvironment()
      • canRetrieveSecurityCredentialsFromEnvironment

        private boolean canRetrieveSecurityCredentialsFromEnvironment()
      • shouldUseMetadataServer

        boolean shouldUseMetadataServer()
      • retrieveResource

        private java.lang.String retrieveResource​(java.lang.String url,
                                                  java.lang.String resourceName,
                                                  java.util.Map<java.lang.String,​java.lang.Object> headers)
                                           throws java.io.IOException
        Throws:
        java.io.IOException
      • retrieveResource

        private java.lang.String retrieveResource​(java.lang.String url,
                                                  java.lang.String resourceName,
                                                  java.lang.String requestMethod,
                                                  java.util.Map<java.lang.String,​java.lang.Object> headers,
                                                  @Nullable
                                                  com.google.api.client.http.HttpContent content)
                                           throws java.io.IOException
        Throws:
        java.io.IOException
      • createMetadataRequestHeaders

        java.util.Map<java.lang.String,​java.lang.Object> createMetadataRequestHeaders​(AwsCredentialSource awsCredentialSource)
                                                                                     throws java.io.IOException
        Throws:
        java.io.IOException