Modul: Erweiterte Sicherheitsfunktionen

Das Modul "Erweiterte Sicherheitsfunktionen" sorgt im DRUCKSHOP für zusätzliche Sicherheit im Umgang mit Passwörtern.
Ist das Modul aktiviert, werden zusätzlich zum Passwort-Hash automatisch zwei weitere Funktionen aktiviert:

  1. Support-Login für Shop-Betreiber
    Über einen Link innerhalb der Kundenverwaltung im Backend kann ein Direktlogin ins Shopsystem durchgeführt werden, ohne dass das Benutzerkennwort bekannt sein muss. Das Kennwort ist darüber hinaus nicht mehr einsehbar und wird als Hash gespeichert.
  2. Sicherer Passwort-Reset
    Kann sich ein Benutzer nicht mehr anmelden, so kann er die "Passwort vergessen"-Funktion im Shop verwenden. Hierbei wird bei aktiviertem Modul ein sicherer, zeitlich limitierter Link generiert und dem Benutzer per E-Mail zugesendet, über den er sich selbst ein neues Passwort vergeben kann. So werden keine sensiblen Daten mehr per E-Mail übermittelt und eine höhere Sicherheit für das System ermöglicht.

Innerhalb der E-Mail-Vorlage kann über die Variable {$passwordResetHash} auf den individuellen Reset-Hash zugegriffen werden.

 

Voraussetzungen für die Verwendung der erweiterten Sicherheitsfunktion

Premium-TemplateÄltere Templates

1) Das Modul "Erweiterte Sicherheitsfunktionen" muss aktiviert sein.

2) Die E-Mail-Vorlage "E-Mail an Kunden bei Passwort vergessen (Hashlink)", "Registrierungs-E-Mail" und "Registrierungs-E-Mail 2" müssen ausgefüllt werden. "E-Mail an Neukunde" wird durch die beiden "Registrierungs-E-Mail"-Vorlagen ersetzt.

HINWEIS: der Link setzt sich aus mehreren Variablen zusammen, unter anderem der Template-Variable {$variables.shopUrl}. Stellen Sie daher bitte sicher, dass diese unter Content-Management → Vorlagen → Template-Variablen auch befüllt ist. Anderenfalls ist der Link aus der E-Mail nicht aufrufbar. Alternativ kann der Link auch direkt fest in der E-Mail-Vorlage bearbeitet und die Variable gegen Ihre URL ausgetauscht werden.

1) Das Modul "Erweiterte Sicherheitsfunktionen" muss aktiviert sein.

2) Die E-Mail-Vorlage "E-Mail an Kunden bei Passwort vergessen (Hashlink)", "Registrierungs-E-Mail" und "Registrierungs-E-Mail 2" müssen ausgefüllt werden. "E-Mail an Neukunde" wird durch die beiden "Registrierungs-E-Mail"-Vorlagen ersetzt.

HINWEIS: Der Link setzt sich aus mehreren Variablen zusammen, unter anderem der Template-Variable {$variables.shopUrl}. Stellen Sie daher bitte sicher, dass diese unter Content-Management → Vorlagen → Template-Variablen auch befüllt ist. Anderenfalls ist der Link aus der E-Mail nicht aufrufbar. Alternativ kann der Link auch direkt fest in der E-Mail-Vorlage bearbeitet und die Variable gegen Ihre URL ausgetauscht werden.

3) Die Datei "password_lost.htm" (Download) muss im Template zur Verfügung stehen.


Musterdateien

Inhalt der password_lost.htm
{include file="data/inc.meta.htm"}
{include file="data/inc.header.htm"}
<main id="pw_lost">
    <div class="wrp">
        {include file="data/inc.module.errorhandler.htm"}

        {if isset($passwordResetSuccess)}
        <p class="hint message success">{$lang.password_reset_success_message}</p>
        {/if}

        {if isset($passwordResetHash) && !isset($passwordResetSuccess)}
        <form action="/password_lost.htm" method="POST" name="passwordResetForm" id="passwordResetForm">
            <h1>{$lang.pw_reset}</h1>
            <fieldset>
                <label>{$lang.neues_pw}</label>
                <input type="password" name="password" required value=""/>
            </fieldset>
            <fieldset>
                <label>{$lang.neues_pw_wdh}</label>
                <input type="password" name="passwordRepeat" required value=""/>
            </fieldset>
            <input name="resetPassword" type="submit" class="btn pw" id="submit" value="{$lang.absenden}"/>
            <input type="hidden" name="hash" value="{$passwordResetHash}"/>
        </form>
        {/if}
    </div>
    {include file="data/blocks/inc.block.usp.htm"}
    {include file="data/blocks/inc.block.parallax.htm"}
    {include file="data/blocks/inc.block.payment.htm"}
</main>
{include file="data/inc.footer.htm"}
{literal}
<script>
    $(document).ready(function () {
        new Script('parallax', {speed: 125}, '.parallax');
    });
</script>
{/literal}
</body>
</html>
Mustervorlage "Email an Kunden bei Passwort vergessen"
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
</head>
<body leftmargin="0" marginwidth="0" topmargin="0" marginheight="0" offset="0" style="background-color:#e6e6e6;margin:0;padding:0;font-family:Arial;font-size:12px;">
<center>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="389" valign="top" bgcolor="#e6e6e6"><table width="620" border="0" align="center" cellpadding="0" cellspacing="0" id="backgroundTable">
<tr>
<td height="30" align="center" valign="middle" bgcolor="#e6e6e6" style="color:#979797;text-align:none;font-size:11px;text-decoration:underline; font-family:Arial, Helvetica, sans-serif;"> </td>
</tr>
<tr>
<td valign="top" bgcolor="#FFFFFF"><table width="590" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="15"> </td>
</tr>
<tr>
<td>{$globalHeader}</td>
</tr>
<tr>
<td height="100" align="left" valign="middle" style="background:#f2f2f2; padding:20px 10px;"><span style="font-size:14px; line-height:1.5em;color:#000;font-family:Arial, Helvetica, sans-serif;  display:block;">Sehr geehrter Kunde,<br />
    <br />
Sie haben Ihr Passwort vergessen? <br />Keine Sorge. Sie können Ihr Kennwort zurücksetzen indem Sie auf den folgenden Link klicken: <a href="http://{$variables.shopUrl}/password_lost.htm?hash={$passwordResetHash}">Passwort zurücksetzen</a>
<br />
Ihre Kundennummer lautet:<strong>{$aData.kundennummer}</strong><br /><br />
Wenn Sie das Zurücksetzen des Kennworts nicht angefordert haben, betrachten Sie diese Email als gegenstandslos.</td>
</tr>
<tr>
<td>{$globalFooter}</td>
</tr>
<tr></tr>
</table></td>
</tr>
</table>
</td>
</tr>
</table>
</center>
</body>
</html>