diff --git a/src/Revision/EntityRevisionLogInterface.php b/src/Revision/EntityRevisionLogInterface.php
index 3a1520334b3795d95dcf5fc988a1d4396166967c..2fc183f81d0c684ecde151fa185bb08e74a03e19 100644
--- a/src/Revision/EntityRevisionLogInterface.php
+++ b/src/Revision/EntityRevisionLogInterface.php
@@ -43,12 +43,30 @@ interface EntityRevisionLogInterface {
   /**
    * Sets the entity revision author.
    *
+   * @param \Drupal\user\UserInterface $account
+   *   The user account of the revision author.
+   *
+   * @return $this
+   */
+  public function setRevisionUser($account);
+
+  /**
+   * Gets the entity revision author ID.
+   *
+   * @return int
+   *   The user ID.
+   */
+  public function getRevisionUserId();
+
+  /**
+   * Sets the entity revision author by ID.
+   *
    * @param int $user_id
    *   The user ID of the revision author.
    *
    * @return $this
    */
-  public function setRevisionUser($user_id);
+  public function setRevisionUserId($user_id);
 
   /**
    * Returns the entity revision log message.
diff --git a/src/Revision/EntityRevisionLogTrait.php b/src/Revision/EntityRevisionLogTrait.php
index 5e8b70db20d22e43051e437cb8971022e963ef98..cc27b1a2f967227ae10be456e5d2debdddf315e9 100644
--- a/src/Revision/EntityRevisionLogTrait.php
+++ b/src/Revision/EntityRevisionLogTrait.php
@@ -8,6 +8,7 @@
 namespace Drupal\entity\Revision;
 
 use Drupal\Core\Field\BaseFieldDefinition;
+use Drupal\user\UserInterface;
 
 /**
  * Provides a trait implementing \Drupal\entity\Revision\EntityRevisionLogInterface.
@@ -74,7 +75,22 @@ trait EntityRevisionLogTrait {
   /**
    * {@inheritdoc}
    */
-  public function setRevisionUser($user_id) {
+  public function setRevisionUser(UserInterface $account) {
+    $this->revision_user->entity = $account;
+    return $this;
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function getRevisionUserId() {
+    return $this->revision_user->target_id;
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function setRevisionUserId($user_id) {
     $this->revision_user->target_id = $user_id;
     return $this;
   }
diff --git a/tests/Kernel/EntityRevisionLogTraitTest.php b/tests/Kernel/EntityRevisionLogTraitTest.php
index 9b658e5cb3b1047a93154dd091025c6121109fdb..7ca16a0a81b93fe81ea95cbab771fc6d98ec3a67 100644
--- a/tests/Kernel/EntityRevisionLogTraitTest.php
+++ b/tests/Kernel/EntityRevisionLogTraitTest.php
@@ -54,8 +54,12 @@ class EntityRevisionLogTraitTest extends KernelTestBase {
 
     $entity->setRevisionCreationTime(1234567890);
     $this->assertEquals(1234567890, $entity->getRevisionCreationTime());
-    $entity->setRevisionUser($user2->id());
+    $entity->setRevisionUser($user2);
     $this->assertEquals($user2->id(), $entity->getRevisionUser()->id());
+    $this->assertEquals($user2->id(), $entity->getRevisionUserId());
+    $entity->setRevisionUserId($user->id());
+    $this->assertEquals($user->id(), $entity->getRevisionUserId());
+
     $entity->setRevisionLogMessage('Giraffe!');
     $this->assertEquals('Giraffe!', $entity->getRevisionLogMessage());
   }