Переглянути джерело

feat(webapp): adds Terms of Use page, updates Privacy Policy page

Nils Wisiol 5 роки тому
батько
коміт
c24db49a61

+ 3 - 2
webapp/src/App.vue

@@ -59,8 +59,9 @@
         <div class="d-sm-flex flex-row align-right py-2">
           <div class="px-2 grey--text text--darken-1">powered by <a class="grey--text" href="//securesystems.de/" style="text-decoration: none">SSE</a></div>
           <div class="px-2"><a href="//github.com/desec-io/desec-stack/">Source Code</a></div>
-          <div class="px-2"><router-link :to="{name: 'impressum'}">Impressum (Legal Notice)</router-link></div>
-          <div class="px-2"><router-link :to="{name: 'privacy-policy'}">Datenschutzerklärung (Privacy Policy)</router-link></div>
+          <div class="px-2"><router-link :to="{name: 'terms'}">Terms of Use</router-link></div>
+          <div class="px-2"><router-link :to="{name: 'privacy-policy'}">Privacy Policy (Datenschutzerklärung)</router-link></div>
+          <div class="px-2"><router-link :to="{name: 'impressum'}">Legal Notice (Impressum)</router-link></div>
         </div>
       </div>
       <div class="grey darken-4 d-md-flex flex-row justify-space-between pa-6">

+ 5 - 0
webapp/src/router/index.js

@@ -58,6 +58,11 @@ const routes = [
     name: 'privacy-policy',
     component: () => import('../views/PrivacyPolicy.vue')
   },
+  {
+    path: '/terms/',
+    name: 'terms',
+    component: () => import('../views/Terms.vue')
+  },
 ]
 
 const router = new VueRouter({

+ 1 - 1
webapp/src/views/Home.vue

@@ -83,7 +83,7 @@
   </div>
 </template>
 
-<style>
+<style scoped>
   div.triangle-bg {
     border: 80em solid transparent;
     border-right: 60em solid #FFC107;

+ 122 - 92
webapp/src/views/PrivacyPolicy.vue

@@ -1,97 +1,95 @@
 <template>
-  <v-container>
-    <v-card class="mx-4 my-8">
-      <v-toolbar
-              color="secondary"
-              dark
-              flat
-      >
-        <v-card-title>Privacy Policy in a Nutshell</v-card-title>
-      </v-toolbar>
-      <v-card-text>
-        <p>We collect a minimum amount of data only. Here's a summary:</p>
-        <ul>
-          <li>We collect your IP address and related connection parameters when you visit our web site, so that we can see which browser we need to support etc.</li>
-          <li>If you register (create an account) or donate money to us through our form, we collect some personal data such as your email address.</li>
-          <li>If you sign up for our newsletter, we collect your email address.</li>
-          <li>We do <b>not</b> use any type of user tracking or behavior analytics, and we do <b>not</b> load any dependencies from external hosts.</li>
-          <li>We use state-of-the-art cryptography such as TLS and PBKDF2-based password hashing to protect your information.</li>
-        </ul>
-        <p>As deSEC is under German jurisdiction, please note that the legally binding version of our privacy policy is the below “Datenschutzerklärung”.</p>
-      </v-card-text>
-    </v-card>
+  <div>
+    <v-container fluid class="grey lighten-4">
+      <v-container>
+        <v-row class="pt-8">
+          <v-col class="text-center">
+            <h1>Privacy Policy</h1>
+          </v-col>
+        </v-row>
+        <v-row class="pb-8">
+          <v-col class="col-12 col-sm-6 d-flex" v-for="p in privacy_policy" :key="p.title">
+            <v-card>
+              <v-card-title v-text="p.title"></v-card-title>
+              <v-card-text>{{p.text}}</v-card-text>
+            </v-card>
+          </v-col>
+        </v-row>
+      </v-container>
+    </v-container>
+    <v-container class="pt-8">
+      <h2>Datenschutzerklärung / Privacy Policy</h2>
 
-    <h1>Datenschutzerklärung / Privacy Policy</h1>
-
-    <p>Verantwortlich im Sinne der Datenschutzgesetze, insbesondere der EU-Datenschutzgrundverordnung (DSGVO), ist:</p>
-    <p>deSEC e.V.
-      <br>Nils Wisiol
-      <br>Kyffhäuserstr. 5
-      <br>10781 Berlin</p>
-    <h2>Ihre Betroffenenrechte</h2>
-    <p>Unter den angegebenen Kontaktdaten unseres Datenschutzbeauftragten können Sie jederzeit folgende Rechte ausüben:</p>
-    <ul>
-      <li>Auskunft über Ihre bei uns gespeicherten Daten und deren Verarbeitung (Art. 15 DSGVO),</li>
-      <li>Berichtigung unrichtiger personenbezogener Daten (Art. 16 DSGVO),</li>
-      <li>Löschung Ihrer bei uns gespeicherten Daten (Art. 17 DSGVO),</li>
-      <li>Einschränkung der Datenverarbeitung, sofern wir Ihre Daten aufgrund gesetzlicher Pflichten noch nicht löschen dürfen (Art. 18 DSGVO),</li>
-      <li>Widerspruch gegen die Verarbeitung Ihrer Daten bei uns (Art. 21 DSGVO) und</li>
-      <li>Datenübertragbarkeit, sofern Sie in die Datenverarbeitung eingewilligt haben oder einen Vertrag mit uns abgeschlossen haben (Art. 20 DSGVO).</li>
-    </ul>
-    <p>Sofern Sie uns eine Einwilligung erteilt haben, können Sie diese jederzeit mit Wirkung für die Zukunft widerrufen.</p>
-    <p>Sie können sich jederzeit mit einer Beschwerde an eine Aufsichtsbehörde wenden, z. B. an die zuständige Aufsichtsbehörde des Bundeslands Ihres Wohnsitzes oder an die für uns als verantwortliche Stelle zuständige Behörde. Eine Liste der Aufsichtsbehörden (für den nichtöffentlichen Bereich) mit Anschrift finden Sie <a href="https://www.bfdi.bund.de/DE/Infothek/Anschriften_Links/anschriften_links-node.html">hier</a>.</p>
-    <p></p><h2>Erfassung allgemeiner Informationen beim Besuch unserer Website</h2>
-    <h3>Art und Zweck der Verarbeitung:</h3>
-    <p>Wenn Sie auf unsere Website zugreifen, d.h., wenn Sie sich nicht registrieren oder anderweitig Informationen übermitteln, werden automatisch Informationen allgemeiner Natur erfasst. Diese Informationen (Server-Logfiles) beinhalten etwa die Art des Webbrowsers, das verwendete Betriebssystem, Ihre IP-Adresse und ähnliches. </p>
-    <p>Sie werden insbesondere zu folgenden Zwecken verarbeitet:</p>
-    <ul>
-      <li>Sicherstellung eines problemlosen Verbindungsaufbaus der Website,</li>
-      <li>Sicherstellung einer reibungslosen Nutzung unserer Website,</li>
-      <li>Auswertung der Systemsicherheit und -stabilität sowie</li>
-      <li>zu weiteren administrativen Zwecken.</li>
-    </ul>
-    <p>Wir verwenden diese Daten nicht, um Rückschlüsse auf Ihre Person zu ziehen. Informationen dieser Art werden von uns ggfs. statistisch ausgewertet, um unseren Internetauftritt und die dahinterstehende Technik zu optimieren.</p>
-    <h3>Rechtsgrundlage:</h3>
-    <p>Die Verarbeitung erfolgt gemäß Art. 6 Abs. 1 lit. f DSGVO auf Basis unseres berechtigten Interesses an der Verbesserung der Stabilität und Funktionalität unserer Website.</p>
-    <h3>Empfänger:</h3>
-    <p>Empfänger der Daten sind ggf. technische Dienstleister, die für den Betrieb und die Wartung unserer Webseite als Auftragsverarbeiter tätig werden.</p>
-    <h3>Speicherdauer:</h3>
-    <p>Die Daten werden gelöscht, sobald diese für den Zweck der Erhebung nicht mehr erforderlich sind. Dies ist für sitzungsbezogene Daten, die der Bereitstellung der Webseite dienen, grundsätzlich der Fall, wenn die jeweilige Sitzung beendet ist.</p>
-    <h3>Bereitstellung vorgeschrieben oder erforderlich:</h3>
-    <p>Die Bereitstellung der vorgenannten personenbezogenen Daten ist weder gesetzlich noch vertraglich vorgeschrieben. Ohne die IP-Adresse ist jedoch der Dienst und die Funktionsfähigkeit unserer Website nicht gewährleistet. Zudem können einzelne Dienste und Services nicht verfügbar oder eingeschränkt sein. Aus diesem Grund ist ein Widerspruch ausgeschlossen. </p>
-    <p></p><h2>Registrierung auf unserer Website</h2>
-    <h3>Art und Zweck der Verarbeitung:</h3>
-    <p>Bei der Registrierung für die Nutzung unserer personalisierten Leistungen oder Durchführung einer Spende werden einige personenbezogene Daten erhoben, wie Name, Anschrift, Kontakt- und Kommunikationsdaten (z. B. Telefonnummer und E-Mail-Adresse). Sind Sie bei uns registriert, können Sie auf Inhalte und Leistungen zugreifen, die wir nur registrierten Nutzern anbieten. Angemeldete Nutzer haben zudem die Möglichkeit, bei Bedarf die bei Registrierung angegebenen Daten jederzeit zu ändern oder zu löschen. Selbstverständlich erteilen wir Ihnen darüber hinaus jederzeit Auskunft über die von uns über Sie gespeicherten personenbezogenen Daten.</p>
-    <h3>Rechtsgrundlage:</h3>
-    <p>Die Verarbeitung der bei der Registrierung eingegebenen Daten erfolgt auf Grundlage einer Einwilligung des Nutzers (Art. 6 Abs. 1 lit. a DSGVO).</p>
-    <p>Dient die Registrierung der Erfüllung eines Vertrages, dessen Vertragspartei die betroffene Person ist oder der Durchführung vorvertraglicher Maßnahmen, so ist zusätzliche Rechtsgrundlage für die Verarbeitung der Daten Art. 6 Abs. 1 lit. b DSGVO.</p>
-    <h3>Empfänger:</h3>
-    <p>Empfänger der Daten sind ggf. technische Dienstleister, die für den Betrieb und die Wartung unserer Website als Auftragsverarbeiter tätig werden.</p>
-    <h3>Speicherdauer:</h3>
-    <p>Daten werden in diesem Zusammenhang nur verarbeitet, solange die entsprechende Einwilligung vorliegt. Danach werden sie gelöscht, soweit keine gesetzlichen Aufbewahrungspflichten entgegenstehen. Zur Kontaktaufnahme in diesem Zusammenhang nutzen Sie bitte die am Ende dieser Datenschutzerklärung angegebenen Kontaktdaten.</p>
-    <h3>Bereitstellung vorgeschrieben oder erforderlich:</h3>
-    <p>Die Bereitstellung Ihrer personenbezogenen Daten erfolgt freiwillig, allein auf Basis Ihrer Einwilligung. Ohne die Bereitstellung Ihrer personenbezogenen Daten können wir Ihnen keinen Zugang auf unsere angebotenen Inhalte und Leistungen gewähren.</p>
-    <p></p><h2>Newsletter</h2>
-    <h3>Art und Zweck der Verarbeitung:</h3>
-    <p>Ihre Daten werden ausschließlich dazu verwendet, Ihnen den abonnierten Newsletter per E-Mail zuzustellen. Hierzu ist die Angabe Ihrer E-Mail-Adresse ausreichend. Abonnenten können auch über Umstände per E-Mail informiert werden, die für den Dienst oder die Registrierung relevant sind (bspw. Änderungen des Newsletterangebots oder technische Gegebenheiten).</p>
-    <p>Für eine wirksame Registrierung benötigen wir eine valide E-Mail-Adresse. Um zu überprüfen, dass eine Anmeldung tatsächlich durch den Inhaber einer E-Mail-Adresse erfolgt, setzen wir das „Double-opt-in“-Verfahren ein. Hierzu protokollieren wir die Bestellung des Newsletters, den Versand einer Bestätigungsmail und den Eingang der hiermit angeforderten Antwort. Weitere Daten werden nicht erhoben. Die Daten werden ausschließlich für den Newsletterversand verwendet und nicht an Dritte weitergegeben.</p>
-    <h3>Rechtsgrundlage:</h3>
-    <p>Auf Grundlage Ihrer ausdrücklich erteilten Einwilligung (Art. 6 Abs. 1 lit. a DSGVO), übersenden wir Ihnen regelmäßig unseren Newsletter bzw. vergleichbare Informationen per E-Mail an Ihre angegebene E-Mail-Adresse. </p>
-    <p>Die Einwilligung zur Speicherung Ihrer persönlichen Daten und ihrer Nutzung für den Newsletterversand können Sie jederzeit mit Wirkung für die Zukunft widerrufen. In jedem Newsletter findet sich dazu ein entsprechender Link. Außerdem können Sie sich jederzeit auch direkt auf dieser Website abmelden oder uns Ihren Widerruf über die am Ende dieser Datenschutzhinweise angegebene Kontaktmöglichkeit mitteilen.</p>
-    <h3>Empfänger:</h3>
-    <p>Empfänger der Daten sind ggf. Auftragsverarbeiter.</p>
-    <h3>Speicherdauer:</h3>
-    <p>Die Daten werden in diesem Zusammenhang nur verarbeitet, solange die entsprechende Einwilligung vorliegt. Danach werden sie gelöscht.</p>
-    <h3>Bereitstellung vorgeschrieben oder erforderlich:</h3>
-    <p>Die Bereitstellung Ihrer personenbezogenen Daten erfolgt freiwillig, allein auf Basis Ihrer Einwilligung. Ohne bestehende Einwilligung können wir Ihnen unseren Newsletter leider nicht zusenden.</p>
-    <p></p><h2>Verschlüsselung</h2>
-    <p>Um die Sicherheit Ihrer Daten bei der Übertragung zu schützen, verwenden wir dem aktuellen Stand der Technik entsprechende Verschlüsselungsverfahren (z.B. TLS).</p>
-    <p></p><h2>Änderung unserer Datenschutzbestimmungen</h2>
-    <p>Wir behalten uns vor, diese Datenschutzerklärung anzupassen, damit sie stets den aktuellen rechtlichen Anforderungen entspricht oder um Änderungen unserer Leistungen in der Datenschutzerklärung umzusetzen, z.B. bei der Einführung neuer Services. Für Ihren erneuten Besuch gilt dann die neue Datenschutzerklärung.</p>
-    <h2>Fragen an den Datenschutzbeauftragten</h2>
-    <p>Wenn Sie Fragen zum Datenschutz haben, schreiben Sie uns bitte eine E-Mail oder wenden Sie sich direkt an die für den Datenschutz verantwortliche Person in unserer Organisation: {{email}}</p>
-    <p><em>Die Datenschutzerklärung wurde <a href="https://www.activemind.de/datenschutz/datenschutzhinweis-generator/">mithilfe der activeMind AG</a> erstellt.</em></p>
-  </v-container>
+      <p>Verantwortlich im Sinne der Datenschutzgesetze, insbesondere der EU-Datenschutzgrundverordnung (DSGVO), ist:</p>
+      <p>deSEC e.V.
+        <br>Nils Wisiol
+        <br>Kyffhäuserstr. 5
+        <br>10781 Berlin</p>
+      <h3>Ihre Betroffenenrechte</h3>
+      <p>Unter den angegebenen Kontaktdaten unseres Datenschutzbeauftragten können Sie jederzeit folgende Rechte ausüben:</p>
+      <ul>
+        <li>Auskunft über Ihre bei uns gespeicherten Daten und deren Verarbeitung (Art. 15 DSGVO),</li>
+        <li>Berichtigung unrichtiger personenbezogener Daten (Art. 16 DSGVO),</li>
+        <li>Löschung Ihrer bei uns gespeicherten Daten (Art. 17 DSGVO),</li>
+        <li>Einschränkung der Datenverarbeitung, sofern wir Ihre Daten aufgrund gesetzlicher Pflichten noch nicht löschen dürfen (Art. 18 DSGVO),</li>
+        <li>Widerspruch gegen die Verarbeitung Ihrer Daten bei uns (Art. 21 DSGVO) und</li>
+        <li>Datenübertragbarkeit, sofern Sie in die Datenverarbeitung eingewilligt haben oder einen Vertrag mit uns abgeschlossen haben (Art. 20 DSGVO).</li>
+      </ul>
+      <p>Sofern Sie uns eine Einwilligung erteilt haben, können Sie diese jederzeit mit Wirkung für die Zukunft widerrufen.</p>
+      <p>Sie können sich jederzeit mit einer Beschwerde an eine Aufsichtsbehörde wenden, z. B. an die zuständige Aufsichtsbehörde des Bundeslands Ihres Wohnsitzes oder an die für uns als verantwortliche Stelle zuständige Behörde. Eine Liste der Aufsichtsbehörden (für den nichtöffentlichen Bereich) mit Anschrift finden Sie <a href="https://www.bfdi.bund.de/DE/Infothek/Anschriften_Links/anschriften_links-node.html">hier</a>.</p>
+      <p></p><h3>Erfassung allgemeiner Informationen beim Besuch unserer Website</h3>
+      <h4>Art und Zweck der Verarbeitung:</h4>
+      <p>Wenn Sie auf unsere Website zugreifen, d.h., wenn Sie sich nicht registrieren oder anderweitig Informationen übermitteln, werden automatisch Informationen allgemeiner Natur erfasst. Diese Informationen (Server-Logfiles) beinhalten etwa die Art des Webbrowsers, das verwendete Betriebssystem, Ihre IP-Adresse und ähnliches. </p>
+      <p>Sie werden insbesondere zu folgenden Zwecken verarbeitet:</p>
+      <ul>
+        <li>Sicherstellung eines problemlosen Verbindungsaufbaus der Website,</li>
+        <li>Sicherstellung einer reibungslosen Nutzung unserer Website,</li>
+        <li>Auswertung der Systemsicherheit und -stabilität sowie</li>
+        <li>zu weiteren administrativen Zwecken.</li>
+      </ul>
+      <p>Wir verwenden diese Daten nicht, um Rückschlüsse auf Ihre Person zu ziehen. Informationen dieser Art werden von uns ggfs. statistisch ausgewertet, um unseren Internetauftritt und die dahinterstehende Technik zu optimieren.</p>
+      <h4>Rechtsgrundlage:</h4>
+      <p>Die Verarbeitung erfolgt gemäß Art. 6 Abs. 1 lit. f DSGVO auf Basis unseres berechtigten Interesses an der Verbesserung der Stabilität und Funktionalität unserer Website.</p>
+      <h4>Empfänger:</h4>
+      <p>Empfänger der Daten sind ggf. technische Dienstleister, die für den Betrieb und die Wartung unserer Webseite als Auftragsverarbeiter tätig werden.</p>
+      <h4>Speicherdauer:</h4>
+      <p>Die Daten werden gelöscht, sobald diese für den Zweck der Erhebung nicht mehr erforderlich sind. Dies ist für sitzungsbezogene Daten, die der Bereitstellung der Webseite dienen, grundsätzlich der Fall, wenn die jeweilige Sitzung beendet ist.</p>
+      <h4>Bereitstellung vorgeschrieben oder erforderlich:</h4>
+      <p>Die Bereitstellung der vorgenannten personenbezogenen Daten ist weder gesetzlich noch vertraglich vorgeschrieben. Ohne die IP-Adresse ist jedoch der Dienst und die Funktionsfähigkeit unserer Website nicht gewährleistet. Zudem können einzelne Dienste und Services nicht verfügbar oder eingeschränkt sein. Aus diesem Grund ist ein Widerspruch ausgeschlossen. </p>
+      <p></p><h3>Registrierung auf unserer Website</h3>
+      <h4>Art und Zweck der Verarbeitung:</h4>
+      <p>Bei der Registrierung für die Nutzung unserer personalisierten Leistungen oder Durchführung einer Spende werden einige personenbezogene Daten erhoben, wie Name, Anschrift, Kontakt- und Kommunikationsdaten (z. B. Telefonnummer und E-Mail-Adresse). Sind Sie bei uns registriert, können Sie auf Inhalte und Leistungen zugreifen, die wir nur registrierten Nutzern anbieten. Angemeldete Nutzer haben zudem die Möglichkeit, bei Bedarf die bei Registrierung angegebenen Daten jederzeit zu ändern oder zu löschen. Selbstverständlich erteilen wir Ihnen darüber hinaus jederzeit Auskunft über die von uns über Sie gespeicherten personenbezogenen Daten.</p>
+      <h4>Rechtsgrundlage:</h4>
+      <p>Die Verarbeitung der bei der Registrierung eingegebenen Daten erfolgt auf Grundlage einer Einwilligung des Nutzers (Art. 6 Abs. 1 lit. a DSGVO).</p>
+      <p>Dient die Registrierung der Erfüllung eines Vertrages, dessen Vertragspartei die betroffene Person ist oder der Durchführung vorvertraglicher Maßnahmen, so ist zusätzliche Rechtsgrundlage für die Verarbeitung der Daten Art. 6 Abs. 1 lit. b DSGVO.</p>
+      <h4>Empfänger:</h4>
+      <p>Empfänger der Daten sind ggf. technische Dienstleister, die für den Betrieb und die Wartung unserer Website als Auftragsverarbeiter tätig werden.</p>
+      <h4>Speicherdauer:</h4>
+      <p>Daten werden in diesem Zusammenhang nur verarbeitet, solange die entsprechende Einwilligung vorliegt. Danach werden sie gelöscht, soweit keine gesetzlichen Aufbewahrungspflichten entgegenstehen. Zur Kontaktaufnahme in diesem Zusammenhang nutzen Sie bitte die am Ende dieser Datenschutzerklärung angegebenen Kontaktdaten.</p>
+      <h4>Bereitstellung vorgeschrieben oder erforderlich:</h4>
+      <p>Die Bereitstellung Ihrer personenbezogenen Daten erfolgt freiwillig, allein auf Basis Ihrer Einwilligung. Ohne die Bereitstellung Ihrer personenbezogenen Daten können wir Ihnen keinen Zugang auf unsere angebotenen Inhalte und Leistungen gewähren.</p>
+      <p></p><h3>Newsletter</h3>
+      <h4>Art und Zweck der Verarbeitung:</h4>
+      <p>Ihre Daten werden ausschließlich dazu verwendet, Ihnen den abonnierten Newsletter per E-Mail zuzustellen. Hierzu ist die Angabe Ihrer E-Mail-Adresse ausreichend. Abonnenten können auch über Umstände per E-Mail informiert werden, die für den Dienst oder die Registrierung relevant sind (bspw. Änderungen des Newsletterangebots oder technische Gegebenheiten).</p>
+      <p>Für eine wirksame Registrierung benötigen wir eine valide E-Mail-Adresse. Um zu überprüfen, dass eine Anmeldung tatsächlich durch den Inhaber einer E-Mail-Adresse erfolgt, setzen wir das „Double-opt-in“-Verfahren ein. Hierzu protokollieren wir die Bestellung des Newsletters, den Versand einer Bestätigungsmail und den Eingang der hiermit angeforderten Antwort. Weitere Daten werden nicht erhoben. Die Daten werden ausschließlich für den Newsletterversand verwendet und nicht an Dritte weitergegeben.</p>
+      <h4>Rechtsgrundlage:</h4>
+      <p>Auf Grundlage Ihrer ausdrücklich erteilten Einwilligung (Art. 6 Abs. 1 lit. a DSGVO), übersenden wir Ihnen regelmäßig unseren Newsletter bzw. vergleichbare Informationen per E-Mail an Ihre angegebene E-Mail-Adresse. </p>
+      <p>Die Einwilligung zur Speicherung Ihrer persönlichen Daten und ihrer Nutzung für den Newsletterversand können Sie jederzeit mit Wirkung für die Zukunft widerrufen. In jedem Newsletter findet sich dazu ein entsprechender Link. Außerdem können Sie sich jederzeit auch direkt auf dieser Website abmelden oder uns Ihren Widerruf über die am Ende dieser Datenschutzhinweise angegebene Kontaktmöglichkeit mitteilen.</p>
+      <h4>Empfänger:</h4>
+      <p>Empfänger der Daten sind ggf. Auftragsverarbeiter.</p>
+      <h4>Speicherdauer:</h4>
+      <p>Die Daten werden in diesem Zusammenhang nur verarbeitet, solange die entsprechende Einwilligung vorliegt. Danach werden sie gelöscht.</p>
+      <h4>Bereitstellung vorgeschrieben oder erforderlich:</h4>
+      <p>Die Bereitstellung Ihrer personenbezogenen Daten erfolgt freiwillig, allein auf Basis Ihrer Einwilligung. Ohne bestehende Einwilligung können wir Ihnen unseren Newsletter leider nicht zusenden.</p>
+      <p></p><h3>Verschlüsselung</h3>
+      <p>Um die Sicherheit Ihrer Daten bei der Übertragung zu schützen, verwenden wir dem aktuellen Stand der Technik entsprechende Verschlüsselungsverfahren (z.B. TLS).</p>
+      <p></p><h3>Änderung unserer Datenschutzbestimmungen</h3>
+      <p>Wir behalten uns vor, diese Datenschutzerklärung anzupassen, damit sie stets den aktuellen rechtlichen Anforderungen entspricht oder um Änderungen unserer Leistungen in der Datenschutzerklärung umzusetzen, z.B. bei der Einführung neuer Services. Für Ihren erneuten Besuch gilt dann die neue Datenschutzerklärung.</p>
+      <h3>Fragen an den Datenschutzbeauftragten</h3>
+      <p>Wenn Sie Fragen zum Datenschutz haben, schreiben Sie uns bitte eine E-Mail oder wenden Sie sich direkt an die für den Datenschutz verantwortliche Person in unserer Organisation: {{email}}</p>
+      <p><em>Die Datenschutzerklärung wurde <a href="https://www.activemind.de/datenschutz/datenschutzhinweis-generator/">mithilfe der activeMind AG</a> erstellt.</em></p>
+    </v-container>
+  </div>
 </template>
 
 <script>
@@ -100,6 +98,38 @@
     name: 'Impressum',
     data: () => ({
       email: EMAIL,
+      privacy_policy: [
+        {
+          title: 'Visiting this Website',
+          text: 'We collect your IP address and related connection parameters when you visit our web site, ' +
+                  'so that we can see which browser we need to support etc.',
+        },
+        {
+          title: 'Creating an Account',
+          text: 'If you register (create an account) to us through our form, we collect some personal data such as ' +
+                  'your email address.',
+        },
+        {
+          title: 'Connection and Credentials',
+          text: 'We use modern cryptography such as TLS to protect your connection, and algorithms like ' +
+                  'PBKDF2-based password hashing to secure your sensitive information.',
+        },
+        {
+          title: 'No External Trackers and Resources, No Cookies',
+          text: "We don't use any type of user tracking or behavioral analytics, and we do not load any dependencies " +
+                  'from external hosts.',
+        },
+        {
+          title: 'Donating Money',
+          text: 'If you donate money to us through our form, we collect some personal data depending on the selected ' +
+                  'method of payment.',
+        },
+        {
+          title: 'European Jurisdiction',
+          text: 'As deSEC is located in Germany, privacy standards are rather high. The legally binding version of ' +
+                  'the Privacy Policy is written in German. You can find it below.'
+        }
+      ],
     }),
   }
 </script>

+ 6 - 3
webapp/src/views/SignUp.vue

@@ -113,7 +113,10 @@
                       tabindex="4"
                 >
                   <template slot="label">
-                    <v-flex>Yes, I agree to the <a @click.stop="privacyPolicy">privacy policy</a>.</v-flex>
+                    <v-flex>
+                      Yes, I agree to the <a @click.stop="open_route('terms')">Terms of Use</a> and
+                      <a @click.stop="open_route('privacy-policy')">Privacy Policy</a>.
+                    </v-flex>
                   </template>
                 </v-checkbox>
               </v-layout>
@@ -184,8 +187,8 @@
       this.initialFocus();
     },
     methods: {
-      async privacyPolicy() {
-        window.open(this.$router.resolve({name: 'privacy-policy'}).href);
+      async open_route(route) {
+        window.open(this.$router.resolve({name: route}).href);
         this.terms = !this.terms; // silly but easy fix for "accidentally" checking the box by clicking the link
       },
       async getCaptcha(focus = false) {

+ 111 - 0
webapp/src/views/Terms.vue

@@ -0,0 +1,111 @@
+<template>
+  <div>
+  <v-card outline tile class="pa-md-12 pa-8 elevation-4" style="overflow: hidden">
+    <div class="d-none d-md-block triangle-bg">§§</div>
+    <v-container class="pa-0">
+      <v-row align="center">
+        <v-col class="col-md-6 col-12 py-8 triangle-fg">
+          <h1 class="display-1 font-weight-bold">Terms of Use</h1>
+          <h3 class="subheading mt-2 py-8 font-weight-regular">
+            <p>
+              We collect as little data as possible and restrict the usage of our DNS service only where necessary to
+              meet legal requirements or to ensure the smooth operation of our services. In turn, we rely on the
+              community to use the service responsibly, and exercise care when configuring e.g. bulk operations.
+            </p>
+            <p>
+              Our <router-link :to="{name: 'privacy-policy'}">Privacy Policy</router-link> is also part of the
+              agreement between deSEC and its users.
+            </p>
+          </h3>
+        </v-col>
+      </v-row>
+    </v-container>
+  </v-card>
+  <v-container fluid class="grey lighten-4">
+    <v-container>
+      <v-row class="pt-8">
+        <v-col class="text-center">
+          <h1>Terms of Use</h1>
+        </v-col>
+      </v-row>
+      <v-row class="pb-8">
+        <v-col class="col-12 col-sm-6 d-flex" v-for="t in terms_of_use" :key="t.title">
+          <v-card>
+            <v-card-title v-text="t.title"></v-card-title>
+            <v-card-text>{{t.text}}</v-card-text>
+          </v-card>
+        </v-col>
+      </v-row>
+    </v-container>
+  </v-container>
+  </div>
+</template>
+
+<style scoped>
+  div.triangle-bg {
+    position: absolute;
+    bottom: 0;
+    width: 100%;
+    z-index: 1;
+    right: -.3em;
+    height: 100%;
+    text-align: right;
+    font-size: 33em;
+    font-weight: bold;
+    color: #eee;
+  }
+  .triangle-fg {
+    z-index: 2;
+  }
+</style>
+
+<script>
+export default {
+  name: 'terms',
+  data: () => ({
+    terms_of_use: [
+      {
+        title: 'Keep Server Load Low',
+        text: 'Only send update requests when there is something to update, and use reasonable TTLs. Accounts ' +
+                'that cause extraordinarily high load or cost may be disabled or throttled. Account ' +
+                'holders will be asked for cooperation to resolve the issue.',
+      },
+      {
+        title: 'Users Must be Responsive',
+        text: 'Users are required to register with an email address and are obliged to read and react to our ' +
+                'emails. For users who do not react or are uncooperative, deSEC reserves the right to disable the ' +
+                'account zone, and/or modify or disable DNS records or zones in order to ensure smooth operation of ' +
+                'deSEC services.',
+      },
+      {
+        title: 'Expiration of Inactive dynDNS Domains',
+        text: 'Dynamic DNS domains that are not updated for six months or longer will be ' +
+                'deleted after a warning with 4 weeks notice. Owners can prevent deletion by updating DNS ' +
+                'information. Deleted domains will undergo retention until associated certificates as recorded in ' +
+                'the transparency log have expired, to make sure no valid certificates exist when another user ' +
+                'registers the name again.',
+      },
+      {
+        title: 'Domains with Illegal Activity',
+        text: 'Domains that are used for illegal activity such as spam, scam, malware, phishing, etc. will be ' +
+                'disabled immediately and permanently, and owners will be held liable. deSEC will cooperate with ' +
+                'law enforcement to assist prosecution of illegal activity. In most cases, German and European Union ' +
+                'legislation will apply.',
+      },
+      {
+        title: 'Clients Will Need Updates',
+        text: 'In order to ensure surpassing security and usability, deSEC will keep the provided services up to ' +
+                'date as technology evolves. We explicitly do not guarantee that old client software keeps on ' +
+                'working forever. Breaking changes will usually be announced weeks ahead, but time-critical changes ' +
+                'may come with a shorter or even no grace period.',
+      },
+      {
+        title: 'No Warranty',
+        text: 'deSEC does not guarantee availability for its free services. Functionality of all services is ' +
+                'provided on a best-effort basis. In particular, Quality of Service, even on a low level, and ' +
+                'fitness for a particular purpose are not assured.',
+      },
+    ],
+  })
+}
+</script>