aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndy Scherzinger <info@andy-scherzinger.de>2025-03-05 17:40:05 +0100
committerGitHub <noreply@github.com>2025-03-05 17:40:05 +0100
commitfdb246c1cf95246c3bca3962afdc9f1067a6acec (patch)
tree3e108cf083305bffb96da99d4b295eb7f4b558f9
parentc1d87950ae1ccad136b9d5736e4203cd3ff55e50 (diff)
parent12a92a2e8ba3707768f09911d9a9aa29575eadba (diff)
downloadnextcloud-server-fdb246c1cf95246c3bca3962afdc9f1067a6acec.tar.gz
nextcloud-server-fdb246c1cf95246c3bca3962afdc9f1067a6acec.zip
Merge pull request #50702 from Institutional-Investment-Group/feat/support-aws-session-token9
feat(object_store): Add support for session token (STS) in AWS credentials
-rw-r--r--AUTHORS1
-rw-r--r--lib/private/Files/ObjectStore/S3ConnectionTrait.php6
2 files changed, 5 insertions, 2 deletions
diff --git a/AUTHORS b/AUTHORS
index d6c8f3f6f00..56559c8f5d5 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -559,6 +559,7 @@
- fnuesse <felix.nuesse@t-online.de>
- fnuesse <fnuesse@techfak.uni-bielefeld.de>
- greta <gretadoci@gmail.com>
+ - Hector Valcarcel <hmvalcarcel@gmail.com>
- helix84 <helix84@centrum.sk>
- hkjolhede <hkjolhede@gmail.com>
- hoellen <dev@hoellen.eu>
diff --git a/lib/private/Files/ObjectStore/S3ConnectionTrait.php b/lib/private/Files/ObjectStore/S3ConnectionTrait.php
index 65fc61ffa77..7ddf2abed1d 100644
--- a/lib/private/Files/ObjectStore/S3ConnectionTrait.php
+++ b/lib/private/Files/ObjectStore/S3ConnectionTrait.php
@@ -128,7 +128,7 @@ trait S3ConnectionTrait {
$logger->debug('Bucket "' . $this->bucket . '" This bucket name is not dns compatible, it may contain invalid characters.',
['app' => 'objectstore']);
}
-
+
if ($this->params['verify_bucket_exists'] && !$this->connection->doesBucketExist($this->bucket)) {
try {
$logger->info('Bucket "' . $this->bucket . '" does not exist - creating it.', ['app' => 'objectstore']);
@@ -185,10 +185,12 @@ trait S3ConnectionTrait {
return function () {
$key = empty($this->params['key']) ? null : $this->params['key'];
$secret = empty($this->params['secret']) ? null : $this->params['secret'];
+ $sessionToken = empty($this->params['session_token']) ? null : $this->params['session_token'];
if ($key && $secret) {
return Create::promiseFor(
- new Credentials($key, $secret)
+ // a null sessionToken match the default signature of the constructor
+ new Credentials($key, $secret, $sessionToken)
);
}