@@ -85,15 +85,28 @@ async def mount_drive(self, drive_name):
8585 S3ContentsManager
8686 '''
8787 try :
88- s3_contents_manager = S3ContentsManager (
89- access_key = self ._config .access_key_id ,
90- secret_access_key = self ._config .secret_access_key ,
91- endpoint_url = self ._config .api_base_url ,
92- bucket = drive_name
93- )
94-
9588 # checking if the drive wasn't mounted already
9689 if self .s3_content_managers [drive_name ] is None :
90+
91+ # dealing with long-term credentials (access key, secret key)
92+ if self ._config .session_token is None :
93+ s3_contents_manager = S3ContentsManager (
94+ access_key = self ._config .access_key_id ,
95+ secret_access_key = self ._config .secret_access_key ,
96+ endpoint_url = self ._config .api_base_url ,
97+ bucket = drive_name
98+ )
99+
100+ # dealing with short-term credentials (access key, secret key, session token)
101+ else :
102+ s3_contents_manager = S3ContentsManager (
103+ access_key = self ._config .access_key_id ,
104+ secret_access_key = self ._config .secret_access_key ,
105+ session_token = self ._config .session_token ,
106+ endpoint_url = self ._config .api_base_url ,
107+ bucket = drive_name
108+ )
109+
97110 self .s3_content_managers [drive_name ] = s3_contents_manager
98111
99112 response = {
0 commit comments