Skip to content

Commit d8557d0

Browse files
authored
Merge pull request #19540 from jlutran/fixKeystoneV3Auth
Fix issues with Keystone auth v3 in files_external app
2 parents 51fc07b + 3e849da commit d8557d0

File tree

3 files changed

+6
-2
lines changed

3 files changed

+6
-2
lines changed

apps/files_external/lib/Lib/Auth/OpenStack/OpenStackV3.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ public function __construct(IL10N $l) {
4646
new DefinitionParameter('domain', $l->t('Domain')),
4747
(new DefinitionParameter('password', $l->t('Password')))
4848
->setType(DefinitionParameter::VALUE_PASSWORD),
49+
new DefinitionParameter('tenant', $l->t('Tenant name')),
4950
new DefinitionParameter('url', $l->t('Identity endpoint URL'))
5051
])
5152
;

apps/files_external/lib/Lib/Backend/Swift.php

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,7 @@ public function __construct(IL10N $l, OpenStackV2 $openstackAuth, Rackspace $rac
4444
->addParameters([
4545
(new DefinitionParameter('service_name', $l->t('Service name')))
4646
->setFlag(DefinitionParameter::FLAG_OPTIONAL),
47-
(new DefinitionParameter('region', $l->t('Region')))
48-
->setFlag(DefinitionParameter::FLAG_OPTIONAL),
47+
new DefinitionParameter('region', $l->t('Region')),
4948
new DefinitionParameter('bucket', $l->t('Bucket')),
5049
(new DefinitionParameter('timeout', $l->t('Request timeout (seconds)')))
5150
->setFlag(DefinitionParameter::FLAG_OPTIONAL),

lib/private/Files/ObjectStore/SwiftFactory.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,10 @@ private function getClient() {
119119
if (!isset($this->params['tenantName']) && isset($this->params['tenant'])) {
120120
$this->params['tenantName'] = $this->params['tenant'];
121121
}
122+
if (isset($this->params['domain'])) {
123+
$this->params['scope']['project']['name'] = $this->params['tenant'];
124+
$this->params['scope']['project']['domain']['name'] = $this->params['domain'];
125+
}
122126
$this->params = array_merge(self::DEFAULT_OPTIONS, $this->params);
123127

124128
$cacheKey = $userName . '@' . $this->params['url'] . '/' . $this->params['container'];

0 commit comments

Comments
 (0)