def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
              port=None, proxy=None, proxy_port=None,
              host=DefaultHost, debug=0, security_token=None):
     AWSAuthConnection.__init__(self, host,
                                aws_access_key_id, aws_secret_access_key,
                                True, port, proxy, proxy_port, debug=debug,
                                security_token=security_token)
Beispiel #2
0
 def __init__(self,
              aws_access_key_id=None,
              aws_secret_access_key=None,
              is_secure=True,
              port=None,
              proxy=None,
              proxy_port=None,
              proxy_user=None,
              proxy_pass=None,
              debug=0,
              https_connection_factory=None,
              region=None,
              path='/',
              security_token=None):
     if not region:
         region = RegionInfo(self, self.DefaultRegionName,
                             self.DefaultRegionEndpoint)
     self.region = region
     AWSAuthConnection.__init__(self,
                                self.region.endpoint,
                                aws_access_key_id,
                                aws_secret_access_key,
                                is_secure,
                                port,
                                proxy,
                                proxy_port,
                                proxy_user,
                                proxy_pass,
                                debug,
                                https_connection_factory,
                                path,
                                security_token=security_token)
Beispiel #3
0
    def __init__(self,
                 aws_access_key_id=None,
                 aws_secret_access_key=None,
                 is_secure=True,
                 port=None,
                 proxy=None,
                 proxy_port=None,
                 debug=0,
                 security_token=None,
                 region=None,
                 validate_certs=True):
        if not region:
            region_name = boto.config.get('DynamoDB', 'region',
                                          self.DefaultRegionName)
            for reg in boto.dynamodb.regions():
                if reg.name == region_name:
                    region = reg
                    break

        self.region = region
        AWSAuthConnection.__init__(self,
                                   self.region.endpoint,
                                   aws_access_key_id,
                                   aws_secret_access_key,
                                   is_secure,
                                   port,
                                   proxy,
                                   proxy_port,
                                   debug=debug,
                                   security_token=security_token,
                                   validate_certs=validate_certs)
        self.throughput_exceeded_events = 0
Beispiel #4
0
 def __init__(self,
              aws_access_key_id=None,
              aws_secret_access_key=None,
              is_secure=True,
              port=None,
              proxy=None,
              proxy_port=None,
              host=None,
              debug=0,
              session_token=None):
     if not host:
         host = self.DefaultHost
     self._passed_access_key = aws_access_key_id
     self._passed_secret_key = aws_secret_access_key
     if not session_token:
         session_token = self._get_session_token()
     self.creds = session_token
     self.throughput_exceeded_events = 0
     AWSAuthConnection.__init__(self,
                                host,
                                self.creds.access_key,
                                self.creds.secret_key,
                                is_secure,
                                port,
                                proxy,
                                proxy_port,
                                debug=debug,
                                security_token=self.creds.session_token)
Beispiel #5
0
 def __init__(self, host, aws_access_key_id=None, aws_secret_access_key=None,
              is_secure=True, port=None, proxy=None, proxy_port=None,
              proxy_user=None, proxy_pass=None, debug=0,
              https_connection_factory=None, path='/', provider='aws'):
     AWSAuthConnection.__init__(self, host, aws_access_key_id, aws_secret_access_key,
                                is_secure, port, proxy, proxy_port, proxy_user, proxy_pass,
                                debug, https_connection_factory, path)
Beispiel #6
0
 def __init__(self,
              aws_access_key_id=None,
              aws_secret_access_key=None,
              is_secure=True,
              port=None,
              proxy=None,
              proxy_port=None,
              host=None,
              debug=0,
              session_token=None,
              authenticate_requests=True,
              validate_cert=True,
              max_sts_attempts=3):
     if not host:
         host = self.DefaultHost
     self.validate_cert = validate_cert
     self.authenticate_requests = authenticate_requests
     AWSAuthConnection.__init__(self,
                                host,
                                aws_access_key_id,
                                aws_secret_access_key,
                                is_secure,
                                port,
                                proxy,
                                proxy_port,
                                debug=debug,
                                security_token=session_token)
     self.pending_requests = deque()
     self.sts = AsyncAwsSts(aws_access_key_id, aws_secret_access_key)
     assert (isinstance(max_sts_attempts, int) and max_sts_attempts >= 0)
     self.max_sts_attempts = max_sts_attempts
 def __init__(
     self,
     aws_access_key_id=None,
     aws_secret_access_key=None,
     port=None,
     proxy=None,
     proxy_port=None,
     host=DefaultHost,
     debug=0,
     security_token=None,
     validate_certs=True,
     https_connection_factory=None,
 ):
     AWSAuthConnection.__init__(
         self,
         host,
         aws_access_key_id,
         aws_secret_access_key,
         True,
         port,
         proxy,
         proxy_port,
         debug=debug,
         security_token=security_token,
         validate_certs=validate_certs,
         https_connection_factory=https_connection_factory,
     )
Beispiel #8
0
 def __init__(
     self,
     aws_access_key_id=None,
     aws_secret_access_key=None,
     is_secure=True,
     port=None,
     proxy=None,
     proxy_port=None,
     host=DefaultHost,
     debug=0,
     https_connection_factory=None,
     calling_format=SubdomainCallingFormat(),
 ):
     self.calling_format = calling_format
     AWSAuthConnection.__init__(
         self,
         host,
         aws_access_key_id,
         aws_secret_access_key,
         is_secure,
         port,
         proxy,
         proxy_port,
         debug=debug,
         https_connection_factory=https_connection_factory,
     )
Beispiel #9
0
 def __init__(self,
              private_key_path,
              cert_path,
              aws_access_key_id=None,
              aws_secret_access_key=None,
              is_secure=False,
              port=DefaultPort,
              proxy=None,
              proxy_port=None,
              proxy_user=None,
              proxy_pass=None,
              host=DefaultHost,
              debug=0,
              https_connection_factory=None,
              path='/'):
     self.private_key_path = private_key_path
     self.cert_path = cert_path
     AWSAuthConnection.__init__(
         self,
         host,
         aws_access_key_id,
         aws_secret_access_key,
         is_secure,
         port,
         proxy,
         proxy_port,
         proxy_user,
         proxy_pass,
         debug=debug,
         https_connection_factory=https_connection_factory,
         path=path)
     self._auth_handler.private_key_path = self.private_key_path
Beispiel #10
0
 def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
              is_secure=False, port=None, proxy=None, proxy_port=None,
              host=DefaultHost, debug=0, https_connection_factory=None):
     AWSAuthConnection.__init__(self, host,
                                aws_access_key_id, aws_secret_access_key,
                                is_secure, port, proxy, proxy_port, debug,
                                https_connection_factory)
Beispiel #11
0
 def __init__(self,
              aws_access_key_id=None,
              aws_secret_access_key=None,
              is_secure=True,
              port=None,
              proxy=None,
              proxy_port=None,
              proxy_user=None,
              proxy_pass=None,
              host=DefaultHost,
              debug=0,
              https_connection_factory=None,
              calling_format=SubdomainCallingFormat(),
              path='/',
              provider='aws',
              bucket_class=Bucket):
     self.calling_format = calling_format
     self.bucket_class = bucket_class
     AWSAuthConnection.__init__(
         self,
         host,
         aws_access_key_id,
         aws_secret_access_key,
         is_secure,
         port,
         proxy,
         proxy_port,
         proxy_user,
         proxy_pass,
         debug=debug,
         https_connection_factory=https_connection_factory,
         path=path,
         provider=provider)
Beispiel #12
0
 def __init__(
     self,
     aws_access_key_id=None,
     aws_secret_access_key=None,
     is_secure=True,
     port=None,
     proxy=None,
     proxy_port=None,
     host=None,
     debug=0,
     session_token=None,
 ):
     if not host:
         host = self.DefaultHost
     self._passed_access_key = aws_access_key_id
     self._passed_secret_key = aws_secret_access_key
     if not session_token:
         session_token = self._get_session_token()
     self.creds = session_token
     AWSAuthConnection.__init__(
         self,
         host,
         self.creds.access_key,
         self.creds.secret_key,
         is_secure,
         port,
         proxy,
         proxy_port,
         debug=debug,
         security_token=self.creds.session_token,
     )
Beispiel #13
0
    def __init__(self,
                 aws_access_key_id=None,
                 aws_secret_access_key=None,
                 account_id='-',
                 is_secure=True,
                 port=None,
                 proxy=None,
                 proxy_port=None,
                 proxy_user=None,
                 proxy_pass=None,
                 debug=0,
                 https_connection_factory=None,
                 path='/',
                 provider='aws',
                 security_token=None,
                 suppress_consec_slashes=True,
                 region=None,
                 region_name='us-east-1'):

        if not region:
            for reg in boto.glacier.regions():
                if reg.name == region_name:
                    region = reg
                    break

        self.region = region
        self.account_id = account_id
        AWSAuthConnection.__init__(self, region.endpoint, aws_access_key_id,
                                   aws_secret_access_key, is_secure, port,
                                   proxy, proxy_port, proxy_user, proxy_pass,
                                   debug, https_connection_factory, path,
                                   provider, security_token,
                                   suppress_consec_slashes)
Beispiel #14
0
    def __init__(self,
                 aws_access_key_id=None,
                 aws_secret_access_key=None,
                 is_secure=True,
                 port=None,
                 proxy=None,
                 proxy_port=None,
                 proxy_user=None,
                 proxy_pass=None,
                 host=DefaultHost,
                 debug=0,
                 https_connection_factory=None,
                 calling_format=SubdomainCallingFormat(),
                 path='/',
                 headers={}):
        self.calling_format = calling_format

        self.headers = _environ_get_s3_headers()
        self.headers.update(headers)

        AWSAuthConnection.__init__(
            self,
            host,
            aws_access_key_id,
            aws_secret_access_key,
            is_secure,
            port,
            proxy,
            proxy_port,
            proxy_user,
            proxy_pass,
            debug=debug,
            https_connection_factory=https_connection_factory,
            path=path)
Beispiel #15
0
    def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
                 is_secure=True, port=None, proxy=None, proxy_port=None,
                 debug=0, session_token=None, region=None):
        if not region:
            region_name = boto.config.get('DynamoDB', 'region',
                                          self.DefaultRegionName)
            for reg in boto.dynamodb.regions():
                if reg.name == region_name:
                    region = reg
                    break

        self.region = region
        self._passed_access_key = aws_access_key_id
        self._passed_secret_key = aws_secret_access_key
        if not session_token:
            session_token = self._get_session_token()
        self.creds = session_token
        self.throughput_exceeded_events = 0
        self.request_id = None
        self.instrumentation = {'times': [], 'ids': []}
        self.do_instrumentation = False
        AWSAuthConnection.__init__(self, self.region.endpoint,
                                   self.creds.access_key,
                                   self.creds.secret_key,
                                   is_secure, port, proxy, proxy_port,
                                   debug=debug,
                                   security_token=self.creds.session_token)
Beispiel #16
0
    def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
                 is_secure=True, port=None, proxy=None, proxy_port=None,
                 debug=0, session_token=None, region=None):
        """
        This is, for the moment at least, more complicated than other
        Connection classes wrt credentials.  If a session token is
        passed in, it is expected to be a Credential object obtained
        from a call to STS and those credentials will be used as-is.
        If no session_token is passed in, we need to check to see if
        we are running on an EC2 instance with an IAM Role associated
        with it.  If so, use those temporarty credentials.  Finally, if
        neither of the above scenarios were true, we must create
        temporary credentials by making a call to STS ourselves.

        NOTE: If this is called with an STS session token and no real
              AWS credentials, there will be no way to renew the STS
              session token when it expires.
        """
        if not region:
            region_name = boto.config.get('DynamoDB', 'region',
                                          self.DefaultRegionName)
            for reg in boto.dynamodb.regions():
                if reg.name == region_name:
                    region = reg
                    break

        self.region = region
        self._passed_access_key = aws_access_key_id
        self._passed_secret_key = aws_secret_access_key
        if session_token:
            # If an STS session token was passed in, use it.
            # Note, however, that if no real credentials are passed
            # in it will be impossible to renew this session token
            # and when it expires, things will stop working.
            AWSAuthConnection.__init__(self, self.region.endpoint,
                                       session_token.access_key,
                                       session_token.secret_key,
                                       is_secure, port, proxy, proxy_port,
                                       debug=debug,
                                       security_token=session_token.session_token)
        else:
            # Create a connection in the normal way and see if
            # session credentials are found.  If so, it means we are
            # using IAM Roles on an EC2 instance and we are good to go.
            # If not, we need to explicitly create a session token.
            AWSAuthConnection.__init__(self, self.region.endpoint,
                                       aws_access_key_id,
                                       aws_secret_access_key,
                                       is_secure, port, proxy, proxy_port,
                                       debug=debug)
            if not self.provider.security_token:
                self._need_session_token = True
                self._get_session_token()
            else:
                self._need_session_token = False
        self.throughput_exceeded_events = 0
        self.request_id = None
        self.instrumentation = {'times': [], 'ids': []}
        self.do_instrumentation = False
Beispiel #17
0
 def __init__(self,
              host=DefaultHost,
              aws_access_key_id=None,
              aws_secret_access_key=None,
              retry_policy=S3RetryPolicy()):
     AWSAuthConnection.__init__(self, host, aws_access_key_id,
                                aws_secret_access_key)
     self.retry_policy = retry_policy
Beispiel #18
0
 def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
              is_secure=True, port=None, proxy=None, proxy_port=None,
              host=DefaultHost, debug=0, https_connection_factory=None,
              calling_format=SubdomainCallingFormat()):
     self.calling_format = calling_format
     AWSAuthConnection.__init__(self, host,
             aws_access_key_id, aws_secret_access_key,
             is_secure, port, proxy, proxy_port, debug=debug,
             https_connection_factory=https_connection_factory)
Beispiel #19
0
 def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
              port=None, proxy=None, proxy_port=None,
              host=DefaultHost, debug=0, security_token=None,
              validate_certs=True):
     AWSAuthConnection.__init__(self, host,
                                aws_access_key_id, aws_secret_access_key,
                                True, port, proxy, proxy_port, debug=debug,
                                security_token=security_token,
                                validate_certs=validate_certs)
Beispiel #20
0
 def __init__(self, **kwargs):
     region = kwargs.get('region')
     if not region:
         region = RegionInfo(self, self.DefaultRegionName,
                             self.DefaultRegionEndpoint)
     else:
         del kwargs['region']
     kwargs['host'] = region.endpoint
     AWSAuthConnection.__init__(self, **kwargs)
     self.region = region
Beispiel #21
0
 def __init__(self,
              host,
              aws_access_key_id,
              aws_secret_access_key,
              port=443):
     AWSAuthConnection.__init__(self,
                                host,
                                aws_access_key_id,
                                aws_secret_access_key,
                                port=port)
Beispiel #22
0
 def __init__(self, **kwargs):
     region = kwargs.get('region')
     if not region:
         region = RegionInfo(self, self.DefaultRegionName,
                             self.DefaultRegionEndpoint)
     else:
         del kwargs['region']
     kwargs['host'] = region.endpoint
     AWSAuthConnection.__init__(self, **kwargs)
     self.region = region
Beispiel #23
0
    def __init__(self,
                 aws_access_key_id=None,
                 aws_secret_access_key=None,
                 is_secure=True,
                 port=None,
                 proxy=None,
                 proxy_port=None,
                 host=None,
                 debug=0,
                 session_token=None,
                 endpoint=None,
                 authenticate_requests=True,
                 validate_cert=True,
                 max_sts_attempts=3,
                 ioloop=None):
        if not host:
            host = self.DefaultHost
        if endpoint is not None:
            self.url = endpoint
            parse_url = urlparse(self.url)
            self.host = parse_url.hostname
            self.port = parse_url.port
            self.protocol = parse_url.scheme
        else:
            self.protocol = 'https' if is_secure else 'http'
            self.host = host
            self.port = port

            url = '{0}://{1}'.format(self.protocol, self.host)

            if self.port:
                url += ':{}'.format(self.port)

            self.url = url
        self.validate_cert = validate_cert
        self.authenticate_requests = authenticate_requests
        AWSAuthConnection.__init__(self,
                                   self.host,
                                   aws_access_key_id,
                                   aws_secret_access_key,
                                   is_secure,
                                   self.port,
                                   proxy,
                                   proxy_port,
                                   debug=debug,
                                   security_token=session_token,
                                   validate_certs=self.validate_cert)
        self.ioloop = ioloop or IOLoop.instance()
        self.http_client = AsyncHTTPClient(io_loop=self.ioloop)
        self.pending_requests = deque()
        self.sts = AsyncAwsSts(aws_access_key_id, aws_secret_access_key,
                               is_secure, self.port, proxy, proxy_port)
        assert (isinstance(max_sts_attempts, int) and max_sts_attempts >= 0)
        self.max_sts_attempts = max_sts_attempts
Beispiel #24
0
 def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
              is_secure=True, port=None, proxy=None, proxy_port=None,
              proxy_user=None, proxy_pass=None,
              host=DefaultHost, debug=0, https_connection_factory=None,
              calling_format=SubdomainCallingFormat(), path='/',
              provider='aws', bucket_class=Bucket, security_token=None):
     self.calling_format = calling_format
     self.bucket_class = bucket_class
     AWSAuthConnection.__init__(self, host,
             aws_access_key_id, aws_secret_access_key,
             is_secure, port, proxy, proxy_port, proxy_user, proxy_pass,
             debug=debug, https_connection_factory=https_connection_factory,
             path=path, provider=provider, security_token=security_token)
Beispiel #25
0
 def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
              is_secure=True, port=None, proxy=None, proxy_port=None,
              proxy_user=None, proxy_pass=None, debug=0,
              https_connection_factory=None, region=None, path='/'):
     if not region:
         region = RegionInfo(self, self.DefaultRegionName,
                             self.DefaultRegionEndpoint)
     self.region = region
     AWSAuthConnection.__init__(self, self.region.endpoint,
                                aws_access_key_id, aws_secret_access_key,
                                is_secure, port, proxy, proxy_port,
                                proxy_user, proxy_pass, debug,
                                https_connection_factory, path)
Beispiel #26
0
 def __init__(self, aws_access_key_id=None, aws_secret_access_key=None, region="us-east-1",
              is_secure=True, port=None, proxy=None, proxy_port=None,
              proxy_user=None, proxy_pass=None,
              host=None, debug=0, https_connection_factory=None,
              path='/', provider='aws',  security_token=None,
              suppress_consec_slashes=True):
     if host is None:
         host = 'glacier.%s.amazonaws.com' % (region,)
     AWSAuthConnection.__init__(self, host,
             aws_access_key_id, aws_secret_access_key,
             is_secure, port, proxy, proxy_port, proxy_user, proxy_pass,
             debug=debug, https_connection_factory=https_connection_factory,
             path=path, provider=provider, security_token=security_token,
             suppress_consec_slashes=suppress_consec_slashes)
 def __init__(self, aws_access_key_id=None, aws_secret_access_key=None, region="us-east-1",
              is_secure=True, port=None, proxy=None, proxy_port=None,
              proxy_user=None, proxy_pass=None,
              host=None, debug=0, https_connection_factory=None,
              path='/', provider='aws',  security_token=None,
              suppress_consec_slashes=True):
     if host is None:
         host = 'glacier.%s.amazonaws.com' % (region,)
     AWSAuthConnection.__init__(self, host,
             aws_access_key_id, aws_secret_access_key,
             is_secure, port, proxy, proxy_port, proxy_user, proxy_pass,
             debug=debug, https_connection_factory=https_connection_factory,
             path=path, provider=provider, security_token=security_token,
             suppress_consec_slashes=suppress_consec_slashes)
Beispiel #28
0
 def __init__(self,
              aws_access_key_id=None,
              aws_secret_access_key=None,
              is_secure=False,
              port=None,
              proxy=None,
              proxy_port=None,
              host=DefaultHost,
              debug=0,
              https_connection_factory=None):
     AWSAuthConnection.__init__(self, host, aws_access_key_id,
                                aws_secret_access_key, is_secure, port,
                                proxy, proxy_port, debug,
                                https_connection_factory)
     self.query_conn = None
Beispiel #29
0
 def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
              is_secure=True, port=None, proxy=None, proxy_port=None,
              proxy_user=None, proxy_pass=None,
              host=DefaultHost, debug=0, https_connection_factory=None,
              calling_format=SubdomainCallingFormat(), path='/',
              provider='aws', bucket_class=Bucket, security_token=None,
              suppress_consec_slashes=True, anon=False):
     self.calling_format = calling_format
     self.bucket_class = bucket_class
     self.anon = anon
     AWSAuthConnection.__init__(self, host,
             aws_access_key_id, aws_secret_access_key,
             is_secure, port, proxy, proxy_port, proxy_user, proxy_pass,
             debug=debug, https_connection_factory=https_connection_factory,
             path=path, provider=provider, security_token=security_token,
             suppress_consec_slashes=suppress_consec_slashes)
Beispiel #30
0
 def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
              is_secure=True, port=None, proxy=None, proxy_port=None,
              host=None, debug=0, session_token=None):
     if not host:
         host = self.DefaultHost
     if not session_token:
         self.sts = boto.connect_sts(aws_access_key_id,
                                     aws_secret_access_key)
         session_token = self.sts.get_session_token()
     self.creds = session_token
     AWSAuthConnection.__init__(self, host,
                                self.creds.access_key,
                                self.creds.secret_key,
                                is_secure, port, proxy, proxy_port,
                                debug=debug,
                                security_token=self.creds.session_token)
Beispiel #31
0
    def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
                 is_secure=True, port=None, proxy=None, proxy_port=None,
                 proxy_user=None, proxy_pass=None,
                 host=DefaultHost, debug=0, https_connection_factory=None,
                 calling_format=SubdomainCallingFormat(), path='/',
                 headers={}):
        self.calling_format = calling_format

        self.headers = _environ_get_s3_headers()
        self.headers.update(headers)

        AWSAuthConnection.__init__(self, host,
                aws_access_key_id, aws_secret_access_key,
                is_secure, port, proxy, proxy_port, proxy_user, proxy_pass,
                debug=debug, https_connection_factory=https_connection_factory,
                path=path)
Beispiel #32
0
 def __init__(self, private_key_path, cert_path,
              aws_access_key_id=None, aws_secret_access_key=None,
              is_secure=False, port=DefaultPort, proxy=None, proxy_port=None,
              proxy_user=None, proxy_pass=None,
              host=DefaultHost, debug=0, https_connection_factory=None,
              path='/'):
     self.private_key_path = private_key_path
     self.cert_path = cert_path
     AWSAuthConnection.__init__(self, host, aws_access_key_id,
                                aws_secret_access_key,
                                is_secure, port, proxy, proxy_port,
                                proxy_user, proxy_pass,
                                debug=debug,
                                https_connection_factory=https_connection_factory,
                                path=path)
     self._auth_handler.private_key_path = self.private_key_path
Beispiel #33
0
 def __init__(self,
              aws_access_key_id=None,
              aws_secret_access_key=None,
              port=None,
              proxy=None,
              proxy_port=None,
              host=DefaultHost,
              debug=0):
     AWSAuthConnection.__init__(self,
                                host,
                                aws_access_key_id,
                                aws_secret_access_key,
                                True,
                                port,
                                proxy,
                                proxy_port,
                                debug=debug)
Beispiel #34
0
 def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
              is_secure=True, port=None, proxy=None, proxy_port=None,
              host=None, debug=0, session_token=None,
              authenticate_requests=True, validate_cert=True, max_sts_attempts=3):
   if not host:
     host = self.DefaultHost
   self.validate_cert = validate_cert
   self.authenticate_requests = authenticate_requests
   AWSAuthConnection.__init__(self, host,
                              aws_access_key_id,
                              aws_secret_access_key,
                              is_secure, port, proxy, proxy_port,
                              debug=debug, security_token=session_token)
   self.pending_requests = deque()
   self.sts = AsyncAwsSts(aws_access_key_id, aws_secret_access_key)
   assert (isinstance(max_sts_attempts, int) and max_sts_attempts >= 0)
   self.max_sts_attempts = max_sts_attempts
Beispiel #35
0
 def __init__(self,
              aws_access_key_id=None,
              aws_secret_access_key=None,
              is_secure=True,
              port=None,
              proxy=None,
              proxy_port=None,
              proxy_user=None,
              proxy_pass=None,
              host=DefaultHost,
              debug=0,
              https_connection_factory=None,
              calling_format=DefaultCallingFormat,
              path='/',
              provider='aws',
              bucket_class=Bucket,
              security_token=None,
              suppress_consec_slashes=True,
              anon=False,
              validate_certs=None):
     if isinstance(calling_format, str):
         calling_format = boto.utils.find_class(calling_format)()
     self.calling_format = calling_format
     self.bucket_class = bucket_class
     self.anon = anon
     AWSAuthConnection.__init__(
         self,
         host,
         aws_access_key_id,
         aws_secret_access_key,
         is_secure,
         port,
         proxy,
         proxy_port,
         proxy_user,
         proxy_pass,
         debug=debug,
         https_connection_factory=https_connection_factory,
         path=path,
         provider=provider,
         security_token=security_token,
         suppress_consec_slashes=suppress_consec_slashes,
         validate_certs=validate_certs)
Beispiel #36
0
 def __init__(
     self,
     aws_access_key_id=None,
     aws_secret_access_key=None,
     is_secure=True,
     port=None,
     proxy=None,
     proxy_port=None,
     proxy_user=None,
     proxy_pass=None,
     host=DefaultHost,
     debug=0,
     https_connection_factory=None,
     calling_format=SubdomainCallingFormat(),
     path="/",
     provider="aws",
     bucket_class=Bucket,
     security_token=None,
     suppress_consec_slashes=True,
     anon=False,
 ):
     self.calling_format = calling_format
     self.bucket_class = bucket_class
     self.anon = anon
     AWSAuthConnection.__init__(
         self,
         host,
         aws_access_key_id,
         aws_secret_access_key,
         is_secure,
         port,
         proxy,
         proxy_port,
         proxy_user,
         proxy_pass,
         debug=debug,
         https_connection_factory=https_connection_factory,
         path=path,
         provider=provider,
         security_token=security_token,
         suppress_consec_slashes=suppress_consec_slashes,
     )
Beispiel #37
0
 def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
              is_secure=True, port=None, proxy=None, proxy_port=None,
              proxy_user=None, proxy_pass=None,
              host=DefaultHost, debug=0, https_connection_factory=None,
              calling_format=DefaultCallingFormat, path='/',
              provider='aws', bucket_class=Bucket, security_token=None,
              suppress_consec_slashes=True, anon=False,
              validate_certs=None):
     if isinstance(calling_format, str):
         calling_format=boto.utils.find_class(calling_format)()
     self.calling_format = calling_format
     self.bucket_class = bucket_class
     self.anon = anon
     AWSAuthConnection.__init__(self, host,
             aws_access_key_id, aws_secret_access_key,
             is_secure, port, proxy, proxy_port, proxy_user, proxy_pass,
             debug=debug, https_connection_factory=https_connection_factory,
             path=path, provider=provider, security_token=security_token,
             suppress_consec_slashes=suppress_consec_slashes,
             validate_certs=validate_certs)
Beispiel #38
0
    def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
                 is_secure=True, port=None, proxy=None, proxy_port=None,
                 debug=0, security_token=None, region=None,
                 validate_certs=True):
        if not region:
            region_name = boto.config.get('DynamoDB', 'region',
                                          self.DefaultRegionName)
            for reg in boto.dynamodb.regions():
                if reg.name == region_name:
                    region = reg
                    break

        self.region = region
        AWSAuthConnection.__init__(self, self.region.endpoint,
                                   aws_access_key_id,
                                   aws_secret_access_key,
                                   is_secure, port, proxy, proxy_port,
                                   debug=debug, security_token=security_token,
                                   validate_certs=validate_certs)
        self.throughput_exceeded_events = 0
Beispiel #39
0
    def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
                 is_secure=True, port=None, proxy=None, proxy_port=None,
                 debug=0, security_token=None, region=None):
        if not region:
            region_name = boto.config.get('DynamoDB', 'region',
                                          self.DefaultRegionName)
            for reg in boto.dynamodb.regions():
                if reg.name == region_name:
                    region = reg
                    break

        self.region = region
        AWSAuthConnection.__init__(self, self.region.endpoint,
                                   aws_access_key_id,
                                   aws_secret_access_key,
                                   is_secure, port, proxy, proxy_port,
                                   debug=debug, security_token=security_token)
        self.throughput_exceeded_events = 0
        self.request_id = None
        self.instrumentation = {'times': [], 'ids': []}
        self.do_instrumentation = False
Beispiel #40
0
    def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
                 is_secure=True, port=None, proxy=None, proxy_port=None,
                 host=None, debug=0, session_token=None, endpoint=None,
                 authenticate_requests=True, validate_cert=True, max_sts_attempts=3, ioloop=None):
        if not host:
            host = self.DefaultHost
        if endpoint is not None:
            self.url = endpoint
            parse_url = urlparse(self.url)
            self.host = parse_url.hostname
            self.port = parse_url.port
            self.protocol = parse_url.scheme
        else:
            self.protocol = 'https' if is_secure else 'http'
            self.host = host
            self.port = port

            url = '{0}://{1}'.format(self.protocol, self.host)

            if self.port:
                url += ':{}'.format(self.port)

            self.url = url
        self.validate_cert = validate_cert
        self.authenticate_requests = authenticate_requests
        AWSAuthConnection.__init__(self, self.host,
                                   aws_access_key_id,
                                   aws_secret_access_key,
                                   is_secure, self.port, proxy, proxy_port,
                                   debug=debug, security_token=session_token,
                                   validate_certs=self.validate_cert)
        self.ioloop = ioloop or IOLoop.instance()
        self.http_client = AsyncHTTPClient(io_loop=self.ioloop)
        self.pending_requests = deque()
        self.sts = AsyncAwsSts(aws_access_key_id,
            aws_secret_access_key,
            is_secure, self.port, proxy, proxy_port)
        assert (isinstance(max_sts_attempts, int) and max_sts_attempts >= 0)
        self.max_sts_attempts = max_sts_attempts
Beispiel #41
0
    def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
                 account_id='-', is_secure=True, port=None,
                 proxy=None, proxy_port=None,
                 proxy_user=None, proxy_pass=None, debug=0,
                 https_connection_factory=None, path='/',
                 provider='aws', security_token=None,
                 suppress_consec_slashes=True,
                 region=None, region_name='us-east-1'):

        if not region:
            for reg in boto.glacier.regions():
                if reg.name == region_name:
                    region = reg
                    break

        self.region = region
        self.account_id = account_id
        AWSAuthConnection.__init__(self, region.endpoint,
                                   aws_access_key_id, aws_secret_access_key,
                                   is_secure, port, proxy, proxy_port,
                                   proxy_user, proxy_pass, debug,
                                   https_connection_factory,
                                   path, provider, security_token,
                                   suppress_consec_slashes)
Beispiel #42
0
    def __init__(self,
                 aws_access_key_id=None,
                 aws_secret_access_key=None,
                 is_secure=True,
                 port=None,
                 proxy=None,
                 proxy_port=None,
                 host=None,
                 debug=0,
                 session_token=None,
                 region=None):
        if not region:
            region_name = boto.config.get('DynamoDB', 'region',
                                          self.DefaultRegionName)
            for reg in boto.dynamodb.regions():
                if reg.name == region_name:
                    region = reg
                    break

        self.region = region
        self._passed_access_key = aws_access_key_id
        self._passed_secret_key = aws_secret_access_key
        if not session_token:
            session_token = self._get_session_token()
        self.creds = session_token
        self.throughput_exceeded_events = 0
        AWSAuthConnection.__init__(self,
                                   self.region.endpoint,
                                   self.creds.access_key,
                                   self.creds.secret_key,
                                   is_secure,
                                   port,
                                   proxy,
                                   proxy_port,
                                   debug=debug,
                                   security_token=self.creds.session_token)
Beispiel #43
0
    def __init__(self,
                 aws_access_key_id=None,
                 aws_secret_access_key=None,
                 is_secure=True,
                 port=None,
                 proxy=None,
                 proxy_port=None,
                 debug=0,
                 session_token=None,
                 region=None):
        """
        This is, for the moment at least, more complicated than other
        Connection classes wrt credentials.  If a session token is
        passed in, it is expected to be a Credential object obtained
        from a call to STS and those credentials will be used as-is.
        If no session_token is passed in, we need to check to see if
        we are running on an EC2 instance with an IAM Role associated
        with it.  If so, use those temporarty credentials.  Finally, if
        neither of the above scenarios were true, we must create
        temporary credentials by making a call to STS ourselves.

        NOTE: If this is called with an STS session token and no real
              AWS credentials, there will be no way to renew the STS
              session token when it expires.
        """
        if not region:
            region_name = boto.config.get('DynamoDB', 'region',
                                          self.DefaultRegionName)
            for reg in boto.dynamodb.regions():
                if reg.name == region_name:
                    region = reg
                    break

        self.region = region
        self._passed_access_key = aws_access_key_id
        self._passed_secret_key = aws_secret_access_key
        if session_token:
            # If an STS session token was passed in, use it.
            # Note, however, that if no real credentials are passed
            # in it will be impossible to renew this session token
            # and when it expires, things will stop working.
            AWSAuthConnection.__init__(
                self,
                self.region.endpoint,
                session_token.access_key,
                session_token.secret_key,
                is_secure,
                port,
                proxy,
                proxy_port,
                debug=debug,
                security_token=session_token.session_token)
        else:
            # Create a connection in the normal way and see if
            # session credentials are found.  If so, it means we are
            # using IAM Roles on an EC2 instance and we are good to go.
            # If not, we need to explicitly create a session token.
            AWSAuthConnection.__init__(self,
                                       self.region.endpoint,
                                       aws_access_key_id,
                                       aws_secret_access_key,
                                       is_secure,
                                       port,
                                       proxy,
                                       proxy_port,
                                       debug=debug)
            if not self.provider.security_token:
                self._need_session_token = True
                self._get_session_token()
            else:
                self._need_session_token = False
        self.throughput_exceeded_events = 0
        self.request_id = None
        self.instrumentation = {'times': [], 'ids': []}
        self.do_instrumentation = False
Beispiel #44
0
 def __init__(self, host=DefaultHost, aws_access_key_id=None, aws_secret_access_key=None,
              retry_policy=None):
   AWSAuthConnection.__init__(self, host, aws_access_key_id, aws_secret_access_key)
   self.retry_policy = retry_policy
Beispiel #45
0
 def __init__(self, host, aws_access_key_id, aws_secret_access_key, port=443):
     AWSAuthConnection.__init__(
         self, host, aws_access_key_id, aws_secret_access_key, port=port)