diff --git a/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php b/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php
index 0606f42..3e8a482 100644
--- a/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php
+++ b/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php
@@ -83,7 +83,7 @@ protected static function getUserEnteredStringAsUri($string) {
   }
 
   /**
-   * Disallows saving inaccessible or untrusted URLs.
+   * Disallows saving links to external URLs with untrusted protocols.
    */
   public static function validateUriElement($element, FormStateInterface $form_state, $form) {
     $uri = static::getUserEnteredStringAsUri($element['#value']);
@@ -92,17 +92,7 @@ public static function validateUriElement($element, FormStateInterface $form_sta
     // constraint will detect it.
     // @see \Drupal\link\Plugin\Validation\Constraint\LinkTypeConstraint::validate()
     if (!empty($uri) && parse_url($uri)) {
-      $url = Url::fromUri($uri);
-
-      // Disallow unrouted internal URLs (i.e. disallow 'base:' URIs).
-      $disallowed  = !$url->isRouted() && !$url->isExternal();
-      // Disallow URLs if the current user doesn't have the 'link to any page'
-      // permission nor can access this URI.
-      $disallowed = $disallowed || (!\Drupal::currentUser()->hasPermission('link to any page') && !$url->access());
-      // Disallow external URLs using untrusted protocols.
-      $disallowed = $disallowed || ($url->isExternal() && !in_array(parse_url($uri, PHP_URL_SCHEME), UrlHelper::getAllowedProtocols()));
-
-      if ($disallowed) {
+      if (Url::fromUri($uri)->isExternal() && !in_array(parse_url($uri, PHP_URL_SCHEME), UrlHelper::getAllowedProtocols())) {
         $form_state->setError($element, t("The path '@link_path' is either invalid or you do not have access to it.", ['@link_path' => static::getUriAsDisplayableString($uri)]));
       }
     }
@@ -119,10 +109,7 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
       '#type' => 'url',
       '#title' => $this->t('URL'),
       '#placeholder' => $this->getSetting('placeholder_url'),
-      // The current field value could have been entered by a different user.
-      // However, if it is inaccessible to the current user, do not display it
-      // to them.
-      '#default_value' => (!$item->isEmpty() && (\Drupal::currentUser()->hasPermission('link to any page') || $item->getUrl()->access())) ? static::getUriAsDisplayableString($item->uri) : NULL,
+      '#default_value' => static::getUriAsDisplayableString($item->uri),
       '#element_validate' => array(array(get_called_class(), 'validateUriElement')),
       '#maxlength' => 2048,
       '#required' => $element['#required'],
