Fix validation function for TrustSitelists and TrustPUSitelists
**Impact of the bug**
ReqMgr2

**Describe the bug**
Today Hasan mentioned that Unified mistakenly assigned hundreds of workfllows with `TrustSitelists=1`, instead of providing a boolean flag. From the StdBase spec, I see nothing wrong with the parameter signature:
https://github.com/dmwm/WMCore/blob/master/src/python/WMCore/WMSpec/StdSpecs/StdBase.py#L1160

which basically performs this validate function:
https://github.com/dmwm/WMCore/blob/master/src/python/Utils/Utilities.py#L64-L76

**How to reproduce it**
Testing that `strToBool` function interactively, here is the problem:
```
In [2]: 1 in [False, True]
Out[2]: True
```

**Expected behavior**
Fix the `strToBool` validate function and fail the action if a boolean value is not provided, or one of those variation strings that are supported ("FALSE", "false", "False").

**Additional context and error message**
Here is one such request that went through with that value equals 1 (Hasan mentioned to have assigned around 200 of such workflows):
https://cmsweb.cern.ch/reqmgr2/fetch?rid=haozturk_ACDC0_task_JME-RunIISummer20UL18wmLHEGEN-01157__v1_T_220822_115827_2847

diff --git a/src/python/Utils/Utilities.py b/src/python/Utils/Utilities.py
index c2cf85c8d..1821f6063 100644
--- a/src/python/Utils/Utilities.py
+++ b/src/python/Utils/Utilities.py
@@ -63,11 +63,16 @@ def makeNonEmptyList(stringList):
 
 def strToBool(string):
     """
-    _strToBool_
-
-    Try to convert a string to boolean. i.e. "True" to python True
+    Try to convert different variations of True or False (including a string
+    type object) to a boolean value.
+    In short:
+     * True gets mapped from: True, "True", "true", "TRUE".
+     * False gets mapped from: False, "False", "false", "FALSE"
+     * anything else will fail
+    :param string: expects a boolean or a string, but it could be anything else
+    :return: a boolean value, or raise an exception if value passed in is not supported
     """
-    if string in [False, True]:
+    if string is False or string is True:
         return string
     elif string in ["True", "true", "TRUE"]:
         return True
diff --git a/test/python/Utils_t/Utilities_t.py b/test/python/Utils_t/Utilities_t.py
index 309886ab0..a6df88526 100644
--- a/test/python/Utils_t/Utilities_t.py
+++ b/test/python/Utils_t/Utilities_t.py
@@ -75,7 +75,7 @@ class UtilitiesTests(unittest.TestCase):
         for v in [False, "False", "FALSE", "false"]:
             self.assertFalse(strToBool(v))
 
-        for v in ["", "alan", [], [''], {'a': 123}]:
+        for v in [1, 0, "", "alan", [], [''], {'a': 123}]:
             self.assertRaises(ValueError, strToBool, v)
 
     def testSafeStr(self):
['test/python/Utils_t/Utilities_t.py', 'src/python/Utils/Utilities.py']