[cpp-sp] branch main updated: SSPCPP-971 - AttributeResolver Handler always includes NameID qualifiers
Scott Cantor
cantor.2 at osu.edu
Tue Sep 10 20:27:12 UTC 2024
This is an automated email from the git hooks/post-receive script.
scantor pushed a commit to branch main
in repository cpp-sp.
View the commit online:
http://git.shibboleth.net/view/?p=cpp-sp.git;a=commit;h=3e94f806f3e9dae94b39817a1d5fd774c7853ac2
The following commit(s) were added to refs/heads/main by this push:
new 3e94f806 SSPCPP-971 - AttributeResolver Handler always includes NameID qualifiers
3e94f806 is described below
commit 3e94f806f3e9dae94b39817a1d5fd774c7853ac2
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Tue Sep 10 16:26:09 2024 -0400
SSPCPP-971 - AttributeResolver Handler always includes NameID qualifiers
https://shibboleth.atlassian.net/browse/SSPCPP-971
Added omitQualifiers flag to suppress.
---
plugins/AttributeResolverHandler.cpp | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/plugins/AttributeResolverHandler.cpp b/plugins/AttributeResolverHandler.cpp
index 79a6f86c..9a5dc524 100644
--- a/plugins/AttributeResolverHandler.cpp
+++ b/plugins/AttributeResolverHandler.cpp
@@ -266,6 +266,7 @@ pair<bool,long> AttributeResolverHandler::processMessage(
pair<bool,const char*> param_qual = getString("nameQualifier", httpRequest, HANDLER_PROPERTY_REQUEST|HANDLER_PROPERTY_FIXED);
pair<bool,const char*> param_spqual = getString("spNameQualifier", httpRequest, HANDLER_PROPERTY_REQUEST|HANDLER_PROPERTY_FIXED);
pair<bool,const char*> param_nameid = getString("nameId", httpRequest, HANDLER_PROPERTY_REQUEST|HANDLER_PROPERTY_FIXED);
+ pair<bool,const char*> param_omit = getString("omitQualifiers", httpRequest, HANDLER_PROPERTY_REQUEST|HANDLER_PROPERTY_FIXED);
pair<bool,const char*> param_encoding = getString("encoding", httpRequest, HANDLER_PROPERTY_REQUEST|HANDLER_PROPERTY_FIXED);
if (!param_nameid.first) {
@@ -312,13 +313,17 @@ pair<bool,long> AttributeResolverHandler::processMessage(
scoped_ptr<saml2::NameID> v2name(saml2::NameIDBuilder::buildNameID());
v2name->setName(nameID.get());
v2name->setFormat(format.get());
- v2name->setNameQualifier(nameQualifier.get());
- v2name->setSPNameQualifier(spNameQualifier.get());
+ if (!param_omit.first || !param_omit.second) {
+ v2name->setNameQualifier(nameQualifier.get());
+ v2name->setSPNameQualifier(spNameQualifier.get());
+ }
if (!XMLString::equals(protocol.get(), samlconstants::SAML20P_NS)) {
v1name.reset(saml1::NameIdentifierBuilder::buildNameIdentifier());
v1name->setName(nameID.get());
v1name->setFormat(format.get());
- v1name->setNameQualifier(nameQualifier.get());
+ if (!param_omit.first || !param_omit.second) {
+ v1name->setNameQualifier(nameQualifier.get());
+ }
}
scoped_ptr<ResolutionContext> ctx(resolveAttributes(application, httpRequest, site.second, protocol.get(), v1name.get(), v2name.get()));
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list