From cfc556f41240283180f993207ce77309bb1b623c Mon Sep 17 00:00:00 2001 From: Maxim Devaev Date: Thu, 28 Sep 2023 02:09:57 +0300 Subject: [PATCH] extra isinstance check --- kvmd/plugins/auth/ldap.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/kvmd/plugins/auth/ldap.py b/kvmd/plugins/auth/ldap.py index 8743b2c9..7f7ed597 100644 --- a/kvmd/plugins/auth/ldap.py +++ b/kvmd/plugins/auth/ldap.py @@ -91,7 +91,12 @@ class Plugin(BaseAuthService): attrlist=["memberOf"], timeout=self.__timeout, ) or []): - if dn is not None and isinstance(attrs, dict) and self.__group.encode() in attrs.get("memberOf"): # type: ignore + if ( + dn is not None + and isinstance(attrs, dict) + and isinstance(attrs["memberOf"], (list, dict)) + and self.__group.encode() in attrs["memberOf"] + ): return True except ldap.INVALID_CREDENTIALS: pass