From 420b523f318138b3d5685bb8ae4c1aa7a7377761 Mon Sep 17 00:00:00 2001
From: fan_guiju <fanguiju1992@163.com>
Date: Fri, 29 Jun 2018 01:53:02 -0400
Subject: [PATCH] Added delay_auth_decision config option for swift

The authtoken config variable delay_auth_decision must be set to True.
The default is False, but that breaks public access, StaticWeb, FormPost,
TempURL, and authenticated capabilities requests (using Discoverability).

Change-Id: I420a95f5f9fda3321a4acfc5846e40294a8bd588
Closes-Bug: #1768795
---
 ansible/roles/swift/defaults/main.yml              | 1 +
 ansible/roles/swift/templates/proxy-server.conf.j2 | 1 +
 2 files changed, 2 insertions(+)

diff --git a/ansible/roles/swift/defaults/main.yml b/ansible/roles/swift/defaults/main.yml
index d433fbe51a..d7b7a4b882 100644
--- a/ansible/roles/swift/defaults/main.yml
+++ b/ansible/roles/swift/defaults/main.yml
@@ -46,6 +46,7 @@ swift_admin_tenant_name: "admin"
 swift_devices_mount_point: "/srv/node"
 swift_devices_match_mode: "strict"
 swift_devices_name: "KOLLA_SWIFT_DATA"
+swift_delay_auth_decision: "False"
 
 openstack_swift_auth: "{{ openstack_auth }}"
 
diff --git a/ansible/roles/swift/templates/proxy-server.conf.j2 b/ansible/roles/swift/templates/proxy-server.conf.j2
index efe81d32a8..2bb1ef2da0 100644
--- a/ansible/roles/swift/templates/proxy-server.conf.j2
+++ b/ansible/roles/swift/templates/proxy-server.conf.j2
@@ -43,6 +43,7 @@ user_domain_id = {{ default_user_domain_id }}
 project_name = service
 username = {{ swift_keystone_user }}
 password = {{ swift_keystone_password }}
+delay_auth_decision = {{ swift_delay_auth_decision }}
 
 memcache_security_strategy = ENCRYPT
 memcache_secret_key = {{ memcache_secret_key }}