diff --git a/core/modules/migrate_drupal/config/install/migrate.migration.d6_node.yml b/core/modules/migrate_drupal/config/install/migrate.migration.d6_node.yml
index 790ecb5..f9c2953 100644
--- a/core/modules/migrate_drupal/config/install/migrate.migration.d6_node.yml
+++ b/core/modules/migrate_drupal/config/install/migrate.migration.d6_node.yml
@@ -13,7 +13,10 @@ process:
     source: language
     default_value: "und"
   title: title
-  uid: uid
+  uid:
+    plugin: migration
+    migration: d6_user
+    source: node_uid
   status: status
   created: created
   changed: changed
@@ -25,7 +28,10 @@ process:
     source: format
   'body/value': body
   'body/summary': teaser
-  revision_uid: uid
+  revision_uid:
+    plugin: migration
+    migration: d6_user
+    source: revision_uid
   revision_log: log
   revision_timestamp: timestamp
 
@@ -39,6 +45,7 @@ destination:
   plugin: entity:node
 migration_dependencies:
   required:
+    - d6_user
     - d6_node_type
     - d6_node_settings
     - d6_filter_format
diff --git a/core/modules/migrate_drupal/config/install/migrate.migration.d6_node_revision.yml b/core/modules/migrate_drupal/config/install/migrate.migration.d6_node_revision.yml
index 824e611..443135e 100644
--- a/core/modules/migrate_drupal/config/install/migrate.migration.d6_node_revision.yml
+++ b/core/modules/migrate_drupal/config/install/migrate.migration.d6_node_revision.yml
@@ -13,7 +13,10 @@ process:
     source: language
     default_value: "und"
   title: title
-  uid: uid
+  uid:
+    plugin: migration
+    migration: d6_user
+    source: node_uid
   status: status
   created: created
   changed: changed
@@ -25,7 +28,10 @@ process:
     source: format
   'body/value': body
   'body/summary': teaser
-  revision_uid: uid
+  revision_uid:
+    plugin: migration
+    migration: d6_user
+    source: revision_uid
   revision_log: log
   revision_timestamp: timestamp
 
diff --git a/core/modules/migrate_drupal/src/Plugin/migrate/source/d6/Node.php b/core/modules/migrate_drupal/src/Plugin/migrate/source/d6/Node.php
index 3530a33..10ea3b4 100644
--- a/core/modules/migrate_drupal/src/Plugin/migrate/source/d6/Node.php
+++ b/core/modules/migrate_drupal/src/Plugin/migrate/source/d6/Node.php
@@ -54,7 +54,6 @@ public function query() {
       ))
       ->fields('nr', array(
         'vid',
-        'uid',
         'title',
         'body',
         'teaser',
@@ -62,6 +61,8 @@ public function query() {
         'timestamp',
         'format',
       ));
+    $query->addField('n', 'uid', 'node_uid');
+    $query->addField('nr', 'uid', 'revision_uid');
     $query->innerJoin('node', 'n', static::JOIN);
 
     if (isset($this->configuration['node_type'])) {
@@ -90,7 +91,8 @@ public function fields() {
       'body' => $this->t('Body'),
       'format' => $this->t('Format'),
       'teaser' => $this->t('Teaser'),
-      'uid' => $this->t('Authored by (uid)'),
+      'node_uid' => $this->t('Node authored by (uid)'),
+      'revision_uid' => $this->t('Revision authored by (uid)'),
       'created' => $this->t('Created timestamp'),
       'changed' => $this->t('Modified timestamp'),
       'status' => $this->t('Published'),
diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateNodeTestBase.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateNodeTestBase.php
index d8ab3e6..ec78a83 100644
--- a/core/modules/migrate_drupal/src/Tests/d6/MigrateNodeTestBase.php
+++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateNodeTestBase.php
@@ -37,6 +37,10 @@ protected function setUp() {
         array(array(1), array('filtered_html')),
         array(array(2), array('full_html')),
       ),
+      'd6_user' => array(
+        array(array(1), array(1)),
+        array(array(2), array(2)),
+      ),
       'd6_field_instance_widget_settings' => array(
         array(
           array('page', 'field_test'),
diff --git a/core/modules/migrate_drupal/tests/src/Unit/source/d6/NodeByNodeTypeTest.php b/core/modules/migrate_drupal/tests/src/Unit/source/d6/NodeByNodeTypeTest.php
index cb0b671..3f60458 100644
--- a/core/modules/migrate_drupal/tests/src/Unit/source/d6/NodeByNodeTypeTest.php
+++ b/core/modules/migrate_drupal/tests/src/Unit/source/d6/NodeByNodeTypeTest.php
@@ -115,10 +115,10 @@ protected function setUp() {
     // Add another row with an article node and make sure it is not migrated.
 
     foreach ($database_contents as $k => $row) {
-      foreach (array('nid', 'vid', 'title', 'uid', 'body', 'teaser', 'format', 'timestamp', 'log') as $i => $field) {
+      foreach (array('nid', 'vid', 'uid', 'title', 'body', 'teaser', 'format', 'timestamp', 'log') as $i => $field) {
         $this->databaseContents['node_revisions'][$k][$field] = $row[$field];
-        // Keep nid and vid.
-        if ($i > 1) {
+        // Keep nid, vid and uid.
+        if ($i > 2) {
           unset($row[$field]);
         }
       }
diff --git a/core/modules/migrate_drupal/tests/src/Unit/source/d6/NodeTest.php b/core/modules/migrate_drupal/tests/src/Unit/source/d6/NodeTest.php
index 81e84cd..a226b93 100644
--- a/core/modules/migrate_drupal/tests/src/Unit/source/d6/NodeTest.php
+++ b/core/modules/migrate_drupal/tests/src/Unit/source/d6/NodeTest.php
@@ -109,10 +109,10 @@ class NodeTest extends MigrateSqlSourceTestCase {
    */
   protected function setUp() {
     foreach ($this->expectedResults as $k => $row) {
-      foreach (array('nid', 'vid', 'title', 'uid', 'body', 'teaser', 'log', 'timestamp', 'format') as $i => $field) {
+      foreach (array('nid', 'vid', 'uid', 'title', 'body', 'teaser', 'log', 'timestamp', 'format') as $i => $field) {
         $this->databaseContents['node_revisions'][$k][$field] = $row[$field];
-        // Keep nid and vid.
-        if ($i > 1) {
+        // Keep nid, vid and uid.
+        if ($i > 2) {
           unset($row[$field]);
         }
       }
