From 2ea84be398b19be1b4d319622b2995d8e38db862 Mon Sep 17 00:00:00 2001 From: Mikel Larreategi Date: Mon, 4 Dec 2023 16:30:57 +0100 Subject: [PATCH 1/4] login user in portal_membership --- src/pas/plugins/oidc/plugins.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/pas/plugins/oidc/plugins.py b/src/pas/plugins/oidc/plugins.py index a1a2c3c..9a44f8a 100644 --- a/src/pas/plugins/oidc/plugins.py +++ b/src/pas/plugins/oidc/plugins.py @@ -229,6 +229,9 @@ def rememberIdentity(self, userinfo): if user and self.getProperty("create_restapi_ticket"): self._setupJWTTicket(user_id, user) + mtool = api.portal.get_tool('portal_membership') + mtool.loginUser(self.request) + def _updateUserProperties(self, user, userinfo): """Update the given user properties from the set of credentials. This is utilised when first creating a user, and to update From de71de6886ff5446f04a8995a3508c01b2be90a7 Mon Sep 17 00:00:00 2001 From: Mikel Larreategi Date: Mon, 4 Dec 2023 16:31:56 +0100 Subject: [PATCH 2/4] changelog --- news/41.feature | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 news/41.feature diff --git a/news/41.feature b/news/41.feature new file mode 100644 index 0000000..12939df --- /dev/null +++ b/news/41.feature @@ -0,0 +1,2 @@ +Login the user in portal_membership +[erral] From ac02f91b0be139de1991671e21ff734a8b9204e2 Mon Sep 17 00:00:00 2001 From: Mikel Larreategi Date: Mon, 4 Dec 2023 16:58:57 +0100 Subject: [PATCH 3/4] black --- src/pas/plugins/oidc/plugins.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pas/plugins/oidc/plugins.py b/src/pas/plugins/oidc/plugins.py index 9a44f8a..003db2a 100644 --- a/src/pas/plugins/oidc/plugins.py +++ b/src/pas/plugins/oidc/plugins.py @@ -229,7 +229,7 @@ def rememberIdentity(self, userinfo): if user and self.getProperty("create_restapi_ticket"): self._setupJWTTicket(user_id, user) - mtool = api.portal.get_tool('portal_membership') + mtool = api.portal.get_tool("portal_membership") mtool.loginUser(self.request) def _updateUserProperties(self, user, userinfo): From cf2a5b84c82ec7cc7df49767299121eb2bf57675 Mon Sep 17 00:00:00 2001 From: Mikel Larreategi Date: Mon, 4 Dec 2023 17:09:08 +0100 Subject: [PATCH 4/4] use globalrequest --- src/pas/plugins/oidc/plugins.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/pas/plugins/oidc/plugins.py b/src/pas/plugins/oidc/plugins.py index 003db2a..0a5ca25 100644 --- a/src/pas/plugins/oidc/plugins.py +++ b/src/pas/plugins/oidc/plugins.py @@ -17,6 +17,7 @@ from secrets import choice from typing import List from ZODB.POSException import ConflictError +from zope.globalrequest import getRequest from zope.interface import implementer from zope.interface import Interface @@ -230,7 +231,7 @@ def rememberIdentity(self, userinfo): self._setupJWTTicket(user_id, user) mtool = api.portal.get_tool("portal_membership") - mtool.loginUser(self.request) + mtool.loginUser(getRequest()) def _updateUserProperties(self, user, userinfo): """Update the given user properties from the set of credentials.