viele Jahre betreiben wir diese Plattform auf einer etwas älteren Code-Basis in Form eines Debian-Servers, php und einer MySQL Datenbank. Sie hat uns viele Jahre treue Dienste geleistet, liefert pro Monat für fast 20 Millionen Web-Anfragen ein Ergebnis aus, aber hinter den Kulissen hat es uns vor allem in den letzten Jahren sehr viel Arbeit bereitet.
So viel Arbeit, dass viele andere Dinge zu kurz kamen, da schließlich nur die freiwillige Freizeit der jeweiligen Team-Mitgliedern zur Verfügung stand.
Schon vor vielen Jahren bestand daher der Wunsch das Forum grundlegend zu erneuern; wenn möglich mit dem Anspruch dies auch auf einer .NET Plattform zu betreiben, was so aus Mangel an kompatiblen Möglichkeiten leider nicht möglich war. Ein Wechsel auf eine neuere php-Version wäre mit einem Datenverlust begleitet worden, was wir ebenfalls nicht wollten.
Nach nun etwas über zwei Jahren Entwicklungszeit - es stand nur die Freizeit am Abend oder am Wochenende zur Verfügung - können wir nun den Erfolg verkünden, dass wir in Kürze (ein genaues Datum steht noch aus) den Umzug auf eine Eigenentwicklung basierend mit .NET 5, ASP.NET 5, Entity Framework 5, vielen Open Source Komponenten und Azure durchführen werden.
Was ändert sich?
- das gesamte Hosting, das gesamte Backend: wir wechseln vollständig auf einen .NET Stack mit C#9, .NET 5, ASP.NET 5, Entity Framework 5, MediatR als Engine..... und und und sowie Azure SQL, Azure Web Apps und andere Annehmlichkeiten, die wir von Azure von Haus aus geschenkt bekommen. Wir werden nach dem Umzug einen Artikel zur Verfügung stellen, wie wir das neue Forum umgesetzt haben
- das Frontend wird - leider - nur gewisse Änderungen mitbringen. Der große Fokus bestand einfach darin eine stabile, zukunftssichere technische Basis zu erhalten, sodass wir nun mit der Zeit auch das Frontend anpassen können
Gibt es neue Features?
Geben wir bekannt, wenn wir umgezogen sind :-)
Ändert sich mein Passwort?
Nein.
Euer Passwort ist derzeit mit einer kryptographischen Ein-Weg-Hashfunktion inklusive Salting in einem 128 Bit-Hashwert gespeichert. Dies basiert auf einem prinzipiell immer noch sicheren Verfahren - ist jedoch nicht mehr die modernste Art und Weise Passwörter abzulegen.
Beim ersten Login auf der neuen Plattform wird euer Passwort automatisch in ein moderneres, sichereres PBKDF2-basierendes Hashverfahren neu verschlüsselt und abgelegt. Dies ist die derzeitige Standard-Implementierung unserer Identity Plattform und gilt als insgesamt derzeit sicherstes Verfahren für das verschlüsselte Abspeichern von Passwort-Informationen.
Die automatische Passwort-Migration ist ein standardisiertes Verfahren, um Passwörter automatisch auf einen jeweils aktuellsten Standard zu migrieren und ist Teil der Identity Plattform, die wir verwenden.
Auch in Zukunft, wenn es einen noch sichereren Weg gibt Passwörter abzulegen, wird dieser Mechanismus verwendet.
Ändern sich die URLs?
Ja. Im Prinzip werden sich alle, wirklich alle URLs von mycsharp.de ändern.
Das neue myCSharp Portal wird mit einem SEO-freundlichen URL-Schema arbeiten, wobei alle bestehenden URLs ihre Gültigkeit behalten, da einfach entsprechend von den alten auf die neue URLs weitergeleitet werden
Bot-Schutz und Troll-Schutz
In der Vergangenheit hatten wir immer wieder - wie viele andere Webseiten auch - Probleme mit Bots und Trolls. Ein wirkliches Eindämmen haben wir dabei vor allem mit der Integration von Google Recaptcha erreicht.
Recaptcha werden wir dabei nicht nur bei der Registrierung, sondern auch bei jedem Login anwenden, um uns gegenüber Automatismen zu schützen.
Dabei verwenden wir die Version 3, die im Hintergrund eine Prüfung durchführt und ihr in 99,9% der Fälle nicht merkt und auch kein entsprechendes Prüf-Fenster kommt.
Was neu ist:
- Eine Registrierung mit einer Wegwerf-Adresse wird nicht mehr möglich sein
- Es ist noch offen, wie wir auf E-Mail Bounces (wenn eine Adresse nicht mehr existiert) oder verwendete Wegwerf-Adressen in bestehenden Accounts reagieren
Der Hintergrund ist, dass wir teilweise Probleme mit dem Spam-Ranking bei E-Mail Anbietern hatten, sodass an gewisse E-Mail Provider keine E-Mails versenden konnte bzw. diese schlicht und einfach abgelehnt wurden; meist ausgelöst durch Bounces sowie durch Wegwerf-Adressen.
Wir verwenden den Mechanismus daher vor allem als Prävention, sodass jeder Benutzer in Zukunft auch weiterhin seine gewünschten E-Mails erhält.
Wir wollen es unbedingt vermeiden zusätzliche persönliche Daten (zB. Handynummer als Bestätigung) abfragen zu müssen, wie es bereits andere Webseiten als Eigenschutz machen bzw. teilweise auch machen müssen.
Wer sich also derzeit mit einer Wegwerf-Adresse angemeldet hat: bitte aktualisiert doch eure Adresse auch aus eigenem Interesse und Fairness zu einer echten, euch zugewiesenen, existierenden E-Mail Adresse.
Welche Daten werden in Zukunft gesammelt?
Das Einhalten der entsprechenden DSGVO-Vorgaben war und ist ein essentieller Punkt beim Betreiben einer solchen Plattform. Ebenso das Cookie-Handling.
Unser generellerer Anspruch war und ist es, dass wir so wenig Daten wie möglich speichern. Wir haben daher dabei darauf geachtet, dass wir so viele Daten wie möglich Optional halten, wenn sie überhaupt abgefragt werden.
Daher haben wir seit eh und je bei der Registrierung die Empfehlung stehen, sich mit einem Pseudonym anzumelden - jeder darf dies natürlich, wenn er möchte.
Wir sind aber verpflichtet gewisse Daten zu speichern; zum Beispiel die IP-Adresse.
Die DSGVO sagt, dass wir solche Informationen speichern dürfen "so lange der Bedarf besteht" - doch was ist "Bedarf"?
Gewisse Urteile sagen, dass wir die IP-Adresse im Speziellen 30 Tage speichern dürfen - andere sprechen von 12 Monaten.
Wir haben uns entschieden, dass 7 Tage für das Speichern einer IP-Adresse für uns vollständig ausreicht und wir diese danach automatisch bei den entsprechenden Inhalten löschen werden.
Durch die neuen Möglichkeiten auf Azure selbst werden wir aber im Rahmen von Application Insights Daten sammeln, die sich jedoch rein auf die Plattform und nicht auf die Benutzer beziehen. Zum Beispiel:
- Logging wie zB. Exception-Logging
- Laufzeit-Analyse wie zB. "Wie lange benötigt das Laden eines Threads aus der Datenbank?"
- Render-Time aka "Wie schnell wird der Inhalt im Browser angezeigt?"
- ...
Es geht hier also um den zuverlässigen Betrieb der Plattform und nicht das Daten-Sammeln von Interaktionen unserer Mitglieder.
Was ihr tun müsst
Nichts - vielleicht etwas Geduld mitbringen.
Der Daten-Umzug wird durch eine selbst geschriebene Migrationsroutine automatisch durchgeführt und braucht selbst nur circa 2 Minuten - alle Daten bleiben erhalten, alle Daten werden migriert.
Downtime
Es wird daher in naher Zukunft eine entsprechende Downtime von mehreren Stunden geben, in der wir die neue Infrastruktur aufbauen und die Daten migrieren.
------------------------------------------
Wir danken euch für eure Community-Treue und euer Verständnis und freuen uns auf die neue Plattform!