Yair Zaslavsky has uploaded a new change for review. Change subject: aaa: Failure in adding users via REST-API ......................................................................
aaa: Failure in adding users via REST-API The following patch fixes both the fact that "domain" part appeared twice in rest-api and the the search query to ignore the domain part in the username as it is provided in the search pattern prior to the username. Topic: AAA Bug-Url: https://bugzilla.redhat.com/1102041 Change-Id: I81ce111439c1647b13ef8ec6fcad169fd5feead6 Signed-off-by: Yair Zaslavsky <yzasl...@redhat.com> --- M backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/AuthzUtils.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/SearchQuery.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/SearchParameters.java 3 files changed, 15 insertions(+), 2 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/85/28685/1 diff --git a/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/AuthzUtils.java b/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/AuthzUtils.java index f1808d6..45269aa 100644 --- a/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/AuthzUtils.java +++ b/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/AuthzUtils.java @@ -286,11 +286,12 @@ public static DirectoryUser mapPrincipalRecord(final ExtensionProxy extension, final ExtMap principalRecord) { DirectoryUser directoryUser = null; if (principalRecord != null) { + String name = principalRecord.<String> get(Authz.PrincipalRecord.NAME); directoryUser = new DirectoryUser( extension.getContext().<String> get(Base.ContextKeys.INSTANCE_NAME), principalRecord.<String> get(Authz.PrincipalRecord.NAMESPACE), principalRecord.<String> get(Authz.PrincipalRecord.ID), - principalRecord.<String> get(Authz.PrincipalRecord.NAME) + name.contains("@") ? name.substring(0, name.indexOf("@")) : name ); directoryUser.setDepartment(principalRecord.<String> get(Authz.PrincipalRecord.DEPARTMENT)); directoryUser.setFirstName(principalRecord.<String> get(Authz.PrincipalRecord.FIRST_NAME)); diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/SearchQuery.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/SearchQuery.java index da09f8b..c203b17 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/SearchQuery.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/SearchQuery.java @@ -171,7 +171,15 @@ } private List<DirectoryUser> searchDirectoryUsers() { - // Parse the query: + // The part after the = in the search pattern should not include domain information + String searchPattern = getParameters().getSearchPattern(); + int atIndex = searchPattern.lastIndexOf("@"); + int eqIndex = searchPattern.indexOf("="); + + if (atIndex > eqIndex) { + searchPattern = searchPattern.substring(0, atIndex); + } + getParameters().setSearchPattern(searchPattern); QueryData data = initQueryData(true); if (data == null) { return Collections.emptyList(); diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/SearchParameters.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/SearchParameters.java index ea2d680..10e9165 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/SearchParameters.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/SearchParameters.java @@ -28,6 +28,10 @@ _maxCount = -1; } + public void setSearchPattern(String searchPattern) { + _searchPattern = searchPattern; + } + public String getSearchPattern() { return _searchPattern; } -- To view, visit http://gerrit.ovirt.org/28685 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I81ce111439c1647b13ef8ec6fcad169fd5feead6 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Yair Zaslavsky <yzasl...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches