diff --git a/config/gitlint/bad_signedoffby.py b/config/gitlint/bad_signedoffby.py
index 83a8eae..00849e9 100644
--- a/config/gitlint/bad_signedoffby.py
+++ b/config/gitlint/bad_signedoffby.py
@@ -2,14 +2,14 @@
 
 from gitlint.rules import CommitRule, RuleViolation
 
+# These are individuals, by email address, who chose to go by a one-word name.
+allowed_singlename_emails = ["anthonyhkf@google.com"]
+
 
 class BadSignedOffBy(CommitRule):
     name = "bad-signed-off-by"
     id = "UC3"
 
-    # These are individuals, by email address, who chose to go by a one-word name.
-    exceptions = ["anthonyhkf@google.com"]
-
     def validate(self, commit):
         violations = []
 
@@ -26,7 +26,7 @@
 
             if (
                 len(match.group(1).split()) <= 1
-                and match.group(2) not in self.exceptions
+                and match.group(2) not in allowed_singlename_emails
             ):
                 violations.append(
                     RuleViolation(
@@ -38,3 +38,23 @@
                 continue
 
         return violations
+
+
+class BadAuthoredBy(CommitRule):
+    name = "bad-authored-by"
+    id = "UC4"
+
+    def validate(self, commit):
+        if commit.author_email in allowed_singlename_emails:
+            return None
+
+        if len(commit.author_name.split()) <= 1:
+            return [
+                RuleViolation(
+                    self.id,
+                    "Author user has too few words; likely user id instead of legal name?",
+                    commit.author_name,
+                )
+            ]
+
+        return None
