TLS method configuration
User is now able to turn on and off the TLS authentication method.
Tested:
No regression found in manual testing. By default everything works
as before, and disabling TLS method prevents user to authenticate
by it.
Tested with Redfish Service Validator, version 1.2.8
Signed-off-by: Zbigniew Kurzynski <zbigniew.kurzynski@intel.com>
Change-Id: Ib7be1af659db568caa7e5b97e3844617586d7754
diff --git a/redfish-core/lib/account_service.hpp b/redfish-core/lib/account_service.hpp
index 8f28ea4..637be86 100644
--- a/redfish-core/lib/account_service.hpp
+++ b/redfish-core/lib/account_service.hpp
@@ -895,10 +895,11 @@
std::optional<bool> cookie;
std::optional<bool> sessionToken;
std::optional<bool> xToken;
+ std::optional<bool> tls;
if (!json_util::readJson(input, asyncResp->res, "BasicAuth", basicAuth,
"Cookie", cookie, "SessionToken", sessionToken,
- "XToken", xToken))
+ "XToken", xToken, "TLS", tls))
{
BMCWEB_LOG_ERROR << "Cannot read values from AuthMethod tag";
return;
@@ -929,8 +930,14 @@
authMethodsConfig.xtoken = *xToken;
}
+ if (tls)
+ {
+ authMethodsConfig.tls = *tls;
+ }
+
if (!authMethodsConfig.basic && !authMethodsConfig.cookie &&
- !authMethodsConfig.sessionToken && !authMethodsConfig.xtoken)
+ !authMethodsConfig.sessionToken && !authMethodsConfig.xtoken &&
+ !authMethodsConfig.tls)
{
// Do not allow user to disable everything
messages::actionNotSupported(asyncResp->res,
@@ -1151,6 +1158,7 @@
{"SessionToken", authMethodsConfig.sessionToken},
{"XToken", authMethodsConfig.xtoken},
{"Cookie", authMethodsConfig.cookie},
+ {"TLS", authMethodsConfig.tls},
}}}}}},
{"LDAP",
{{"Certificates",