fub-eval.blackboard.com Open in urlscan Pro
3.73.3.86  Public Scan

URL: https://fub-eval.blackboard.com/
Submission: On August 06 via api from US — Scanned from DE

Form analysis 1 forms found in the DOM

Name: loginPOST https://fub-eval.blackboard.com

<form action="https://fub-eval.blackboard.com" onsubmit="return cedisLogin.validateLogin(this)" method="POST" name="login">
  <script type="text/javascript">
    function login_openForgotPassword(url) {
      var passwordWin = window.open(url, 'forgotPasswordWindow', 'menubar=1,resizable=1,scrollbars=1,status=1,width=850,height=480');
      passwordWin.focus();
    }
    FastInit.addOnLoad(function() {
      if (typeof ClientCache !== 'undefined') {
        ClientCache.clear();
      }
      var startingJSessionCookie = getCookie("JSESSIONID");
      var guestLocaleCookie = getCookie("guest.session.locale");
      deleteCookie("JSESSIONID", "/@@", null, true);
      deleteCookie("JSESSIONID", "/courses", null, true);
      deleteCookie("JSESSIONID", "/sessions", null, true);
      deleteCookie("JSESSIONID", "/systemdata", null, true);
      deleteCookie("JSESSIONID", "/images", null, true);
      deleteCookie("JSESSIONID", "/images-ltr", null, true);
      deleteCookie("JSESSIONID", "/images-rtl", null, true);
      deleteCookie("JSESSIONID", "/reportbranding", null, true);
      deleteCookie("JSESSIONID", "/reports", null, true);
      deleteCookie("JSESSIONID", "/modules", null, true);
      deleteCookie("JSESSIONID", "/groupjs", null, true);
      deleteCookie("JSESSIONID", "/branding", null, true);
      deleteCookie("JSESSIONID", "/queue_tasks", null, true);
      deleteCookie("JSESSIONID", "/sponsors", null, true);
      deleteCookie("JSESSIONID", "/course_image_main_images", null, true);
      deleteCookie("JSESSIONID", "/course_image_2_images", null, true);
      deleteCookie("JSESSIONID", "/course_image_nav_images", null, true);
      deleteCookie("JSESSIONID", "/org_image_main_images", null, true);
      deleteCookie("JSESSIONID", "/org_image_2_images", null, true);
      deleteCookie("JSESSIONID", "/org_image_nav_images", null, true);
      deleteCookie("JSESSIONID", "/avatar", null, true);
      deleteCookie("JSESSIONID", "/bannerthumbnail", null, true);
      deleteCookie("JSESSIONID", "/deployment", null, true);
      deleteCookie("JSESSIONID", "/content_area", null, true);
      deleteCookie("JSESSIONID", "/portfolio", null, true);
      deleteCookie("JSESSIONID", "/evidence_area", null, true);
      deleteCookie("JSESSIONID", "/public", null, true);
      deleteCookie("JSESSIONID", "/pronunciation_audio", null, true);
      deleteCookie("JSESSIONID", "", null, true);
      deleteCookie("JSESSIONID", "/webapps/login", null, true);
      deleteCookie("JSESSIONID", "/webapps/taglibs", null, true);
      deleteCookie("JSESSIONID", "/webapps/ws", null, true);
      deleteCookie("JSESSIONID", "/webapps/wysiwyg", null, true);
      deleteCookie("JSESSIONID", "/bbcswebdav", null, true);
      deleteCookie("JSESSIONID", "/webapps/cmsmain", null, true);
      deleteCookie("JSESSIONID", "/webapps/xythoswfs", null, true);
      deleteCookie("JSESSIONID", "/admin", null, true);
      deleteCookie("JSESSIONID", "/colorpalettes", null, true);
      deleteCookie("JSESSIONID", "/coursethemes", null, true);
      deleteCookie("JSESSIONID", "/common", null, true);
      deleteCookie("JSESSIONID", "/fonts", null, true);
      deleteCookie("JSESSIONID", "/javascript", null, true);
      deleteCookie("JSESSIONID", "/lib", null, true);
      deleteCookie("JSESSIONID", "/login", null, true);
      deleteCookie("JSESSIONID", "/themes", null, true);
      deleteCookie("JSESSIONID", "/ui", null, true);
      deleteCookie("JSESSIONID", "/ui-ultra", null, true);
      deleteCookie("JSESSIONID", "/learn/api", null, true);
      deleteCookie("JSESSIONID", "/webapps/software-updates", null, true);
      deleteCookie("JSESSIONID", "/webapps/dataIntegration", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-gate-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/ai", null, true);
      deleteCookie("JSESSIONID", "/webapps/goal", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-social-learning-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/api-gateway", null, true);
      deleteCookie("JSESSIONID", "/webapps/rubric", null, true);
      deleteCookie("JSESSIONID", "/webapps/streamViewer", null, true);
      deleteCookie("JSESSIONID", "/webapps/submission-services", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-content-model-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-group-mgmt-LEARN", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-ultra-conversion", null, true);
      deleteCookie("JSESSIONID", "/webapps/gradebook", null, true);
      deleteCookie("JSESSIONID", "/webapps/assessment", null, true);
      deleteCookie("JSESSIONID", "/webapps/videointegration", null, true);
      deleteCookie("JSESSIONID", "/webapps/vtbe-tinymce-ephox-hyperlinking", null, true);
      deleteCookie("JSESSIONID", "/webapps/vtbe-tinymce-ephox-spelling", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-common-styles-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-xss-filter-whitelist-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-xss-filter-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/vtbe-tinymce", null, true);
      deleteCookie("JSESSIONID", "/webapps/bbcms", null, true);
      deleteCookie("JSESSIONID", "/webapps/inline-grading", null, true);
      deleteCookie("JSESSIONID", "/webapps/taskprogress", null, true);
      deleteCookie("JSESSIONID", "/webapps/spreview", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-xss-input-validation-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/portfolio", null, true);
      deleteCookie("JSESSIONID", "/webapps/blogs-journals", null, true);
      deleteCookie("JSESSIONID", "/webapps/foundations-connector", null, true);
      deleteCookie("JSESSIONID", "/webapps/partner-cloud", null, true);
      deleteCookie("JSESSIONID", "/webapps/date-management", null, true);
      deleteCookie("JSESSIONID", "/webapps/discussionboard", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-selfpeer-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/operational-data-store", null, true);
      deleteCookie("JSESSIONID", "/webapps/Bb-wiki-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/retention", null, true);
      deleteCookie("JSESSIONID", "/webapps/assignment", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-mygrades-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/allyintegration", null, true);
      deleteCookie("JSESSIONID", "/webapps/consulting-central", null, true);
      deleteCookie("JSESSIONID", "/webapps/caliper", null, true);
      deleteCookie("JSESSIONID", "/webapps/bbgs-goal-performance-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/school-data-sync", null, true);
      deleteCookie("JSESSIONID", "/webapps/bbtextbook", null, true);
      deleteCookie("JSESSIONID", "/webapps/telemetry", null, true);
      deleteCookie("JSESSIONID", "/webapps/bbcxcourseconversion", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-nautilus-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-mashups-youtube-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/plugins", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-financial-aid-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/calendar", null, true);
      deleteCookie("JSESSIONID", "/webapps/building-block-conversion", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-auth-provider-cas-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/privacy-disclosure", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-theme-diff-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-auth-provider-ldap-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/Bb-mobile-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/achievements", null, true);
      deleteCookie("JSESSIONID", "/webapps/cloudstorageintegration", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-data-integration-lis-final-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-data-integration-ims-xml-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/blackboard", null, true);
      deleteCookie("JSESSIONID", "/webapps/cmsadmin", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-mashups-slideshare-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/notes", null, true);
      deleteCookie("JSESSIONID", "/webapps/portal", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-mashups-flickr-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/bbcxcommoncartridge", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-data-integration-ss-xml-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-telephony-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/enterpriseSurvey", null, true);
      deleteCookie("JSESSIONID", "/webapps/ultraui", null, true);
      deleteCookie("JSESSIONID", "/webapps/scor-scormengine-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/mdb-sa-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/feature-flags", null, true);
      deleteCookie("JSESSIONID", "/webapps/insight-report", null, true);
      deleteCookie("JSESSIONID", "/webapps/oslt-jshack-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/attendance", null, true);
      deleteCookie("JSESSIONID", "/webapps/item-analysis", null, true);
      deleteCookie("JSESSIONID", "/webapps/auth-provider-foundations", null, true);
      deleteCookie("JSESSIONID", "/auth-saml", null, true);
      deleteCookie("JSESSIONID", "/webapps/goal-mastery", null, true);
      deleteCookie("JSESSIONID", "/webapps/asset-processor", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-alerts-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/foundations-token", null, true);
      deleteCookie("JSESSIONID", "/webapps/bb-data-integration-flatfile-BB658200530f70a", null, true);
      deleteCookie("JSESSIONID", "/webapps/searchwidgets", null, true);
      if (guestLocaleCookie != null) {
        setCookie("guest.session.locale", guestLocaleCookie);
      }
      setCookie("JSESSIONID", startingJSessionCookie);
      if (typeof aptrinsic !== 'undefined') {
        window.aptrinsic('reset');
      }
      if (typeof pendo !== 'undefined') {
        pendo.clearSession();
      }
    });
  </script>
  <div id="loginFormFields" class="clearfix">
    <ul id="loginFormList" class="clearfix">
      <li class="clearfix">
        <label for="user_id">Benutzername:</label>
        <input type="text" name="user_id" id="user_id" size="25" maxlength="50" autocomplete="off" onblur="cedisLogin.checkAccount(this.value)">
      </li>
      <li class="clearfix">
        <label for="password">Password</label>
        <input size="25" name="password" id="password" type="password" autocomplete="off">
      </li>
      <li class="clearfix">
        <input id="entry-login" type="submit" value="Anmelden" name="login" class="button expand inverse outline">
      </li>
    </ul>
    <div class="login-form-footer row collapse">
      <div class="stay-signed-in small-6 columns text-left">
      </div>
    </div>
  </div>
  <script src="/javascript/qrcodejs/qrcode.min.js"></script>
  <dialog id="mfa-registration" role="dialog" class="mfa-modal-container" aria-modal="true" style="display: none;">
    <div class="mfa-registration-modal mfa-modal" aria-labelledby="mfa-registration-title" aria-describedby="mfa-registration-description">
      <div class="mfa-modal-title">
        <h1 id="mfa-registration-title">Multi-Factor Authentication</h1>
      </div>
      <div class="registration-modal-body">
        <div id="mfa-registration-description" class="registration-modal-body-description">
          <div>
            <span>Step 1</span>
            <p>Download and install any authenticator app (e.g. <strong>Microsoft Authenticator, Google Authenticator, or Authy</strong>) on your phone.</p>
          </div>
          <div>
            <span>Step 2</span>
            <p class="web-content">Open the authenticator app and scan the image below using your phone's camera or copy the key.</p>
            <p class="mobile-content">Open the authenticator app and copy the key below.</p>
          </div>
        </div>
        <div class="registration-qr-code">
          <div class="qr-code-img" id="qrcode" tabindex="-1" aria-hidden="true" title="${mfaQRUri}"><canvas width="120" height="120" style="display: none;"></canvas><img
              src="data:image/png;base64,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"
              style="display: block;"></div>
          <input type="hidden" id="qr-uri" tabindex="-1" aria-hidden="true" value="${mfaQRUri}">
          <div class="secret-key-container">
            <p id="secretkey">${mf aSec retK ey}</p>
            <div class="copy-key">
              <a id="copy-secret-key" tabindex="0" onclick="copyTextToClipboard();">Copy key</a>
              <div id="copy-feedback" class="copyfeedback">
                <span style="padding: 4px">-</span>
                <div class="copy-success">
                  <span role="alert" aria-live="assertive" style="color: #007D2C;font-size: 12px;line-height: 18px;">Key copied</span>
                  <img class="check-icon" src="/images/ci/icons/complete.svg" aria-hidden="true">
                </div>
              </div>
            </div>
          </div>
        </div>
        <div class="next-progress-info">
          <span>Step 3</span>
          <p id="next-progress-description">Press next to enter the code and associate it with your account</p>
        </div>
      </div>
      <div class="modal-footer">
        <button id="reg-cancel-button" class="modal-button button-cancel">Cancel</button>
        <button id="reg-next-button" class="modal-button button-next">Next</button>
      </div>
    </div>
  </dialog>
  <script type="text/javascript">
    // Initialize QRCode with the provided URI and set display parameters
    var qrcode = new QRCode(document.getElementById("qrcode"), {
      text: document.getElementById("qr-uri").value,
      width: 120,
      height: 120,
      colorDark: "#000000",
      colorLight: "#ffffff",
      correctLevel: QRCode.CorrectLevel.H
    });
    // Event listener for the 'Next' button click in the registration dialog
    const nextButton = document.getElementById('reg-next-button');
    nextButton.addEventListener('click', function(event) {
      event.preventDefault();
      // Hide registration dialog and show verification dialog
      const registrationDialog = document.getElementById('mfa-registration');
      const verificationDialog = document.getElementById('mfa-totp-verification');
      const inputField = document.getElementById('totp-verification-input');
      registrationDialog.style.display = 'none';
      verificationDialog.style.display = 'flex';
      inputField.focus();
      // Update hidden input values to manage UI states
      document.getElementById('showMFARegistration').value = 'false';
      document.getElementById('showMFAVerification').value = 'true';
      document.getElementById('showMFASuccessFul').value = 'false';
    });
    // Event listener for the 'Cancel' button click in the registration dialog
    const regCancelButton = document.getElementById('reg-cancel-button');
    regCancelButton.addEventListener('click', function(event) {
      event.preventDefault();
      // Navigate to login page.
      window.location.href = '/webapps/login/?action=logout';
    });
    // Function to add a space after every 4 characters in the secret key
    function formatSecretKey() {
      const secretKeyElement = document.getElementById('secretkey');
      const secretKeyText = secretKeyElement.textContent;
      const formattedSecretKey = secretKeyText.replace(/(.{4})/g, '$1 ');
      secretKeyElement.textContent = formattedSecretKey;
    }
    // Call the function to format the displayed secret key
    formatSecretKey();
    // Function to copy text to clipboard
    function copyTextToClipboard(text) {
      const textArea = document.createElement('textarea');
      textArea.value = text;
      document.body.appendChild(textArea);
      textArea.select();
      const copykey = document.execCommand('copy');
      document.body.removeChild(textArea);
      return copykey;
    }
    // Event listener for the 'Copy' button click to copy the secret key to clipboard
    function handleCopykeyEvent() {
      event.preventDefault();
      const secretKeyElement = document.getElementById('secretkey');
      const secretKeyText = secretKeyElement.textContent;
      const unformattedSecretKey = secretKeyText.replace(/\s+/g, '');
      copyTextToClipboard(unformattedSecretKey);
      const copyFeedback = document.getElementById('copy-feedback');
      copyFeedback.style.display = 'flex';
      setTimeout(function() {
        copyFeedback.style.display = 'none';
      }, 10000);
      document.getElementById('copy-secret-key').focus();
    }
    document.getElementById('copy-secret-key').addEventListener('click', handleCopykeyEvent);
    document.getElementById('copy-secret-key').addEventListener('keydown', function(event) {
      if (event.key === 'Enter' || event.code === 'Space') {
        handleCopykeyEvent(event);
      }
    });
  </script>
  <dialog id="mfa-totp-verification" class="mfa-modal-container" style="display: none;">
    <div class="mfa-verification-modal mfa-modal" role="dialog" aria-modal="true" aria-labelledby="mfa-verification-title">
      <div class="mfa-modal-title">
        <h1 id="mfa-verification-title">Multi-Factor Authentication</h1>
      </div>
      <div class="verification-modal-body">
        <div class="verification-modal-body-description">
          <label for="totp-verification-input" class="custom-label">Type the Code</label>
          <p id="mfa-verification-description">Type the 6-digit temporary code generated with your authenticator application</p>
        </div>
        <div id="totp-verification-input-container" class="verification-input">
          <input name="secondaryAuthToken" id="totp-verification-input" type="text" onkeypress="return validateTOTP(event)" maxlength="6" tabindex="0" placeholder="000000" autocomplete="off" aria-describedby="mfa-verification-description"
            aria-invalid="false">
        </div>
        <div id="loading-spinner" class="centered">
          <div class="loader-outer">
            <div id="loader">
              <div class="loader-inner"></div>
            </div>
          </div>
        </div>
      </div>
      <div class="modal-footer">
        <button id="totp-back-button2" class="modal-button button-back">Back</button>
        <button id="totp-submit-button" class="modal-button button-submit" type="submit" onclick="showLoadingSpinner();" disabled="">Submit</button>
      </div>
    </div>
  </dialog>
  <script>
    window.onload = function() {
      const totpInput = document.getElementById("totp-verification-input");
      if (totpInput) {
        totpInput.focus();
      }
    }

    function validateTOTP(event) {
      const inputField = document.getElementById('totp-verification-input');
      const key = event.key;
      if ((key >= '0' && key <= '9') || key === 'Backspace' || (event.metaKey && key === 'a')) // for safari browser compatablity
      {
        return true; // Allow
      } else if (key === 'Enter') {
        if (inputField.value.length !== 6) {
          event.preventDefault();
        } else {
          showLoadingSpinner();
          return true;
        }
      } else {
        return false; // Block
      }
    }
    const inputField = document.getElementById('totp-verification-input');
    // To enable/disable the submit button based on input value.
    inputField.addEventListener('keyup', function() {
      const submitButton = document.getElementById('totp-submit-button');
      submitButton.disabled = !(inputField.value.length === 6);
    });
    inputField.addEventListener('input', function() {
      const errorMessageContainer = document.getElementById('totp-error');
      if (errorMessageContainer) {
        errorMessageContainer.style.display = 'none'; // Hide the error message on focus
      }
    });

    function showLoadingSpinner() {
      const spinner = document.getElementById('loading-spinner');
      const inputField = document.getElementById('totp-verification-input');
      const inputContainer = document.getElementById('totp-verification-input-container');
      const errorMessage = document.getElementById('errorMessage');
      const backbutton1 = document.getElementById('totp-back-button1');
      const backbutton2 = document.getElementById('totp-back-button2');
      if (inputField.value.length === 6 && !errorMessage) {
        inputContainer.style.display = 'none';
        spinner.style.display = "flex";
        if (backbutton1) {
          backbutton1.disabled = true;
        }
        if (backbutton2) {
          backbutton2.disabled = true;
        }
      } else if (errorMessage) {
        spinner.style.display = 'none';
        inputContainer.style.display = 'flex';
        inputField.setAttribute('aria-invalid', 'true');
      }
    }

    function clearTOTPCode() {
      document.getElementById('totp-verification-input').value = '';
    }
    const totpButton2 = document.getElementById('totp-back-button2');
    if (totpButton2) {
      totpButton2.addEventListener('click', function(event) {
        event.preventDefault();
        clearTOTPCode();
        window.location.href = '/webapps/login/?action=logout';
      });
    }
  </script>
  <dialog id="mfa-registration-success" role="dialog" class="mfa-modal-container" aria-modal="true" style="display: none;">
    <div class="success-modal mfa-modal" tabindex="0" aria-labelledby="mfa-success-title" aria-describedby="mfa-success-description">
      <div class="mfa-modal-title">
        <h1 id="mfa-success-title">Multi-Factor Authentication</h1>
      </div>
      <div class="modal-success-body">
        <div id="mfa-success-description" class="success-description">
          <div>
            <span>You are all set</span>
            <p>You have enabled multi-factor authentication using your authenticator app.</p>
          </div>
          <div>
            <p class="web-content">We will now ask for a login code anytime you log in.</p>
            <p class="mobile-content">We will now ask for a login code anytime you log in on a device we don't recognize.</p>
          </div>
        </div>
      </div>
      <div class="modal-footer">
        <button id="mfa-registration-succes-button" class="modal-button button-done">Done</button>
        <input type="hidden" id="mfaSuccessfulNavUrl" value="${mfaSuccessfulNavUrl}">
      </div>
    </div>
  </dialog>
  <script>
    const sucessNavButton = document.getElementById('mfa-registration-succes-button');
    sucessNavButton.addEventListener('click', function(event) {
      event.preventDefault();
      const navUrl = document.getElementById('mfaSuccessfulNavUrl').value;
      window.location = navUrl;
    });
  </script>
  <input type="hidden" name="showMFARegistration" id="showMFARegistration" value="$showMFARegistration">
  <input type="hidden" name="showMFAVerification" id="showMFAVerification" value="$showMFAVerification">
  <input type="hidden" name="showMFASuccessFul" id="showMFASuccessFul" value="$showMFASuccessFul">
  <input type="hidden" name="action" value="login">
  <input type="hidden" name="new_loc" value="">
  <input type="hidden" name="blackboard.platform.security.NonceUtil.nonce.ajax" value="62234f21-79ee-445c-add3-6a79319272ab">
</form>

Text Content

 * Startseite
 * Kontakt
 * Impressum
 * Nutzungsbedingungen
 * Datenschutz


BLACKBOARD - LEARNING MANAGEMENT SYSTEM

 * Login
 * Hilfe
 * Jobs

ZUM LOGIN DER




WICHTIGER HINWEIS FÜR NUTZER*INNEN MIT CHARITÉ KONTO

Nutzer*innen mit einem Charité Konto können künftig nur noch das »Login mit
Charité Konto« über den Button auf dieser Seite benutzen.


INFO FÜR NUTZER*INNEN DES PASSWORTMANAGER IHRES BROWSERS

Falls Sie für das Login auf dieser Seite den Passwortmanager Ihres Browsers
benutzen, löschen Sie bitte den entsprechenden Eintrag. Die für diese Seite im
Passwortmanager gespeicherten Zugangsdaten können künftig nicht mehr verwendet
werden. Mit einem Login über »Login mit Charité Konto« können sie dort erneut
dann Zugangsdaten im Passwortmanager Ihres Browser speichern.


WICHTIGER HINWEIS FÜR NUTZER*INNEN MIT CHARITÉ KONTO

Nutzer*innen mit einem Charité Konto können künftig nur noch das »Login mit
Charité Konto« auf dieser Seite benutzen.


INFO FÜR NUTZER*INNEN DES PASSWORTMANAGER IHRES BROWSERS

Falls Sie für das Login auf dieser Seite den Passwortmanager Ihres Browsers
benutzen, löschen Sie bitte den entsprechenden Eintrag. Die für diese Seite im
Passwortmanager gespeicherten Zugangsdaten können künftig nicht mehr verwendet
werden. Nach einem Login über »Login mit Charité Konto« auf dieser Seite können
sie dann erneut Ihre Zugangsdaten im Passwortmanager Ihres Browser speichern.
Please enable JavaScript in your browser for the Blackboard application to
function.
 * Benutzername:
 * Password
 * 




MULTI-FACTOR AUTHENTICATION

Step 1

Download and install any authenticator app (e.g. Microsoft Authenticator, Google
Authenticator, or Authy) on your phone.

Step 2

Open the authenticator app and scan the image below using your phone's camera or
copy the key.

Open the authenticator app and copy the key below.

${mf aSec retK ey}

Copy key
-
Key copied
Step 3

Press next to enter the code and associate it with your account

Cancel Next


MULTI-FACTOR AUTHENTICATION

Type the Code

Type the 6-digit temporary code generated with your authenticator application



Back Submit


MULTI-FACTOR AUTHENTICATION

You are all set

You have enabled multi-factor authentication using your authenticator app.

We will now ask for a login code anytime you log in.

We will now ask for a login code anytime you log in on a device we don't
recognize.

Done
Bitte beachten Sie: hier können sich
ausschließlich FU-Externe Personen anmelden. Alle FU-Angehörige nutzen bitte den
Button »Login (FU-Account)« auf der vorherigen Seite.

--------------------------------------------------------------------------------

Login only for non-FU Accounts possible. All FU members please use the »Login
(FU-Account)« button on the previous page.
Zurück zur Login-Auswahl


HABEN SIE SCHON EINEN BLACKBOARD-ACCOUNT? MELDEN SIE SICH HIER AN.


MELDEN SIE SICH HIER AN.

Die zentrale Lernplattform Blackboard gehört zu den Anwendungen an der Freien
Universität Berlin, die am Single Sign-On teilnehmen. Weitere Informationen
finden Sie hier.

Login (FU-Account)
Login (External Account)
Für alle Angehörigen der Freien Universität Berlin, die über einen FU Account
verfügen.
Für alle FU-Externen, die im Wintersemester 23/24 noch über keinen FU-Account
verfügen.


SIE HABEN NOCH KEINEN BLACKBOARD-ACCOUNT?

Lehrende und Studierende der Freien Universität können sich mit ihrem FU-Account
(früher ZEDAT-Account) selbst an der zentralen Lernplattform Blackboard
registieren. Klicken Sie dazu auf den Button »Selbstregistrierung«.

Selbstregistrierung

Sie haben noch keinen FU-Account für die Nutzung der zentralen Lernplattform
Blackboard? Weitere Informationen finden Sie hier weitere Informationen.
Fehler beim Login / Error Login

Neues in Blackboard


SYSTEM ANNOUNCEMENTS

 * Geänderte Nutzungsbedingungen und Datenschutzhinweise (Wednesday, January 31,
   2024)
   
   
   Liebe Blackboard-Nutzende,
   
   wir haben neue Funktionen in Blackboard implementiert, daher haben wir die
   Allgemeinen Nutzungsbedingungen sowie die Datenschutzhinweise von Blackboard
   dahingehend aktualisiert.
   
    * Unsere aktualisierten Allgemeinen Nutzungsbedingungen 
    * Unsere aktualisierten Datenschutzbestimmungen
   
   Weitere Informationen zu den neuen Funktionen finden Sie in der
   entsprechenden Infobox gleich nach dem Login.
   
   Ihr LMS Team

 * 3OOITW - Mobile App Access Code (Wednesday, January 3, 2024)
   
   
   Use this code (3OOITW) when prompted for institution code in the mobile app

Javascript aktivieren / Enable Javascript
Sie müssen Javascript aktivieren, damit Sie sich einloggen können!
You need JavaScript enabled to log in!
Zum Login der Charité
Hinweis: Dies ist das Testsystem - fub-eval.blackboard.com
fub


 * Eine Kooperation mit der Charité Universitätsmedizin Berlin © 2023

Server Name/IP: ip-10-148-209-18/10.148.209.18, Remote IP: 78.159.108.38