AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi [D2009] Online eMail-Adress Prüfung obs valide ist?
Thema durchsuchen
Ansicht
Themen-Optionen

[D2009] Online eMail-Adress Prüfung obs valide ist?

Ein Thema von KodeZwerg · begonnen am 30. Jul 2018 · letzter Beitrag vom 5. Aug 2018
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: [D2009] Online eMail-Adress Prüfung obs valide ist?

  Alt 30. Jul 2018, 09:32
Danke jobo & MEissing, ich habe Eure Links gecheckt, da geht es aber nicht um eine Online-Prüfung, nur ob Input einer Norm entspricht.

Meine Fußzeile bedarf zwar keiner Antwort, ich finde es manchmal einfach nur lustig was Windows so von sich gibt


Meine Theorie, da ich Neuling bin ist das bestimmt falsch, wäre es so in etwa umzusetzen:
1. DNS abfrage ob Domain existiert
2. SMTP abfrage ob Domain überhaupt diesen Service anbietet
3. auf eben diesen Server connecten
4. “RCPT TO” Kommando darauf loslassen
5. Auswerten was der Server von sich gibt

Mir fehlt das Basiswissen zu allen Punkten.
Gruß vom KodeZwerg

Geändert von KodeZwerg (30. Jul 2018 um 09:37 Uhr)
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#2

AW: [D2009] Online eMail-Adress Prüfung obs valide ist?

  Alt 30. Jul 2018, 09:46
Ja, kann man machen.
Allererster Schritt vor irgendeiner Online Aktion aus einem Programm heraus, das sowas noch nie gemacht hat, wäre m.E. sicherzustellen, dass das (eigene) Programm selbst online ist und die benötigten Kanäle (Ports) nach draußen frei sind.
"Ja, klar, natürlich bin ich selber online, ist doch selbstverständlich..."
Na vielleicht nicht, und wenn Du es nicht bist, was ist dann mit der Prüfung der Adressen? Der Mechnismus müsste dann queuen oder das Programm selbst müsste "online" laufen, dann wäre die Hürde schon mal genommen. (Ist aber bei einem nativen Delphiprogramm nicht die Regel-sagen wir mal) oder Du schaltest intelligent auf einen Offline Fallback um.

Am Ende kann man diesen Kram doch wohl am wirkungsvollsten behandeln, indem man Emails mit "Callback" Links verschickt, wie man es von Registrierung und Co kennt.
Gruß, Jo
  Mit Zitat antworten Zitat
Schokohase
(Gast)

n/a Beiträge
 
#3

AW: [D2009] Online eMail-Adress Prüfung obs valide ist?

  Alt 30. Jul 2018, 09:46
Informiere dich darüber, wie (viele) Mail-Server sich aktuell vor Spam-Schleudern schützen. Das sollte für eine Erkenntnis und Abwägung soweit erstmal genügen.
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: [D2009] Online eMail-Adress Prüfung obs valide ist?

  Alt 30. Jul 2018, 10:09
Callback / Junk-Schutz wollte ich einbauen nachdem meine Theorie durch ist. Danke definitiv für diese Guten Worte/Hinweise !


Dann mach ich mich mal auf die Suche wie ich meine Theorie in Delphi-Code verwandel, als Quick-Test sozusagen, für eine reelle Prüfung habe ich später vorgehabt so etwas in der Art umzusetzen:
Reelle Theorie:
1. Sende tatsächlich eine eMail
2. Werte SMTP Ergebnis aus ob Server eMail ablehnt
3. warte bis zu 24Std auf Reaktion von Server (also eigenes Konto abrufen ob ein Senden-Fehlerbericht vorliegt)

Oder eben generell nur auf "ich sende eMail, schreibt Empfänger nicht zurück dann war es Mist."
Wie ich so etwas automatisieren kann muss ich mir noch aneignen, das trifft auch auf Punkt 3 zu.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

AW: [D2009] Online eMail-Adress Prüfung obs valide ist?

  Alt 30. Jul 2018, 10:29
Zitat von MEissing's Link:
Just send them an email already
No, I’m not joking. Just send your users an email.
Brauchst du die ganze Prüfung denn wirklich?
Sieht mir nach Overkill aus.
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.600 Beiträge
 
Delphi 7 Professional
 
#6

AW: [D2009] Online eMail-Adress Prüfung obs valide ist?

  Alt 30. Jul 2018, 10:21
DNS-Abfreage kann schonmal ein Ansatz sein.

Schau bitte mal hier: https://www.qualidator.com/WQM/de/Tools/DNSReport.aspx

Dort gib' die Domain Deiner Wahl ein.

Du erhältst ggfls. Infos zu den von der Domain "vorgehaltenen" Servern, wie z. B. Nameserver, SMPTServer ...

Bei den Indys gibt's tIdDNSResolver, damit kann man die entsprechenden Infos auch selber abfragen. ICS sollte sowas auch bieten (tDnsQuery).

Und die Infos jetzt an Tante Google: Bei Google suchendelphi source IdDNSResolver oder Bei Google suchendelphi source DnsQuery

Damit sollte dann ein Anfang möglich sein. (Und wie fast schon üblich, wird man damit hier in der Delphipraxis fündig )

https://www.delphipraxis.net/102950-...indy-10-a.html

Automatisieren lässt sich das mit Delphi sicherlich.

Zuerst mal DNS-Abfrage.
Gibt's die Domain?
Hat sie 'nen Mailserver (MX-Record)?
Dann 'ne Mail hinschicken und auf die Antwort des Mailempfängers warten.
Das eigene Postfach kann man auch selbst mit Delphimitteln abfragen und die Antwortmails / erhaltenen Fehlermeldungen auswerten.

Technisch müsste Deine Aufgabenstellung umzusetzen sein, die Frage ist halt: Wieviel Aufwand willst Du da reinstecken?

Welche "Hürden" werden Dir von den mehr oder weniger unbekannten "Partnern" entgegengestellt?

Also das beliebte Thema: Wie realisieren wir eine (mehr oder weniger) vollständige Fehler- und Ausnahmenbehandlung?
  Mit Zitat antworten Zitat
CCRDude

Registriert seit: 9. Jun 2011
678 Beiträge
 
FreePascal / Lazarus
 
#7

AW: [D2009] Online eMail-Adress Prüfung obs valide ist?

  Alt 30. Jul 2018, 10:31
Jeder Spammer würde Jubelschreie ausstoßen, wenn sich die Existenz von Email-Postfächern so passiv testen ließe.

SMTP-Server können (konnten) das prüfen, aber ich erinnere mich grob, dass das schon vor 20 Jahren eben aus Spamvermeidungsgründen flächendeckend deaktiviert wurde.

In Sachen Datenschutz wäre die folgende heute gängige Methode wohl der Kompromiss:
Email mit Code/Link an Adresse verschicken, über den Empfang der Email vom Halter der Email-Adresse bestätigt werden muss (Link anklicken oder Code eingeben).

Bei syntaktischer Prüfung vorab bitte unbedingt in den Standard schauen, nicht einfach nur auf die üblichen verdächtigen Buchstaben prüfen... mehr als die Hälfte aller Webseite lehnen gültige Adressen z.B. mit "+" im Usernamen ab. Erlebe ich immer wieder, weil ich Googles Alias-System verwende (username+irgendwas@example.com landet automatisch in Inbox username@example.com, d.h. ich kann spezifische Email-Adressen pro Dienst verwenden, ohne etwas einzurichten, und sehe sofort, wer meine Email-Adresse veruntreut hat, wenn ich mal Spam erhalte).

Schließe mich ansonsten der Overkill-Fraktion an
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: [D2009] Online eMail-Adress Prüfung obs valide ist?

  Alt 30. Jul 2018, 10:57
Jeder Spammer würde Jubelschreie ausstoßen, wenn sich die Existenz von Email-Postfächern so passiv testen ließe.

SMTP-Server können (konnten) das prüfen, aber ich erinnere mich grob, dass das schon vor 20 Jahren eben aus Spamvermeidungsgründen flächendeckend deaktiviert wurde.

In Sachen Datenschutz wäre die folgende heute gängige Methode wohl der Kompromiss:
Email mit Code/Link an Adresse verschicken, über den Empfang der Email vom Halter der Email-Adresse bestätigt werden muss (Link anklicken oder Code eingeben).

Bei syntaktischer Prüfung vorab bitte unbedingt in den Standard schauen, nicht einfach nur auf die üblichen verdächtigen Buchstaben prüfen... mehr als die Hälfte aller Webseite lehnen gültige Adressen z.B. mit "+" im Usernamen ab. Erlebe ich immer wieder, weil ich Googles Alias-System verwende (username+irgendwas@example.com landet automatisch in Inbox username@example.com, d.h. ich kann spezifische Email-Adressen pro Dienst verwenden, ohne etwas einzurichten, und sehe sofort, wer meine Email-Adresse veruntreut hat, wenn ich mal Spam erhalte).

Schließe mich ansonsten der Overkill-Fraktion an
Ich schrieb ja das ich Neuling bin mit dem was ich vorhabe.
[A-Z0-9._%+-]+@[A-Z0-9.-]+.[A-Z] so in etwa schaut meine Syntax-Prüfung aus um der RFC Norm zu entsprechen.
Wenn meine Theorie eh Mist ist bzw heutzutage nicht mehr brauchbar ist dann bleibt mir wohl keine andere Wahl als tatsächlich ne Mail zu versenden. (Da brauche ich keine Hilfe, da hilft mir ICS)
Dann muss ich wohl an einem Dienst arbeiten der den ganzen Tag nichts weiter macht als ein Konto abzufragen ob da was angekommen ist, automatisch was zurücksenden, User muss dann das gesendete in Dialog einfügen, fertig. Oje...... was solls, alles wird gut.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.600 Beiträge
 
Delphi 7 Professional
 
#9

AW: [D2009] Online eMail-Adress Prüfung obs valide ist?

  Alt 30. Jul 2018, 11:21
Beschreib' bitte Deine Aufgabenstellung nochmal etwas genauer:

Programm hat 'nen Registriedialog.
User gibt da was ein, u. a. eine eMail-Adresse.
Du bekommst diese Infos.
Prüfen, ob es die eMail-Adresse gibt.
Wenn ja, geschieht irgendwas, wenn nein geschieht was anderes.

Eigentlich kannst Du Dir das ganze Prüfen sparen.

Ob 'ne eMail-Adresse gültig ist oder nicht erfährst Du letztlich mit (annähernder) Sicherheit nur, wenn Du 'ne Mail hinschickst und über einen darin enthaltenen Link eine Antwort bekommst.

Bekommst Du diese nicht in einer von Dir festgelegten Zeitspanne, dann verwerfe die Anfrage aus dem Registriedialog.

Das Prüfen von Fehlermeldungen im eigenen Postfach (wegen Unzustellbarkeit ...) kann die Wartezeit verkürzen, da Du dann definitiv weist, dass es "diese" eMail-Adresse nicht gibt. Du kannst Dich aber schon nicht darauf verlassen, dass Du diese Meldung bekommst.

'ne Syntaxprüfung von eMail-Adressen kann nie vollständig sein, sondern nur 'ne Näherung ergeben, die aber schlimmstenfalls auch mal 'ne gültige eMail-Adresse als falsch erkennt.

Eine Antwortmail kann man manipulieren, in dem der Absender nicht zwingend der tatsächliche Absender ist, bringt also auch keine absolute Sicherheit.

Die Antwort auf einen Link in 'ner Mail bringt Dir zumindest die Sicherheit, dass Deine Mail erfolgreich an die angegebene eMail-Adresse verschickt wurde, die Mail geöffnet wurde und der Link angeklickt wurde.

Ob sich hinter der eMail-Adresse ein Sammelpostfach befindet, das die Mails von X Fake-eMail-Adressen entgegennimmt, wirst Du nie mit letzter Sicherheit erfahren.
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: [D2009] Online eMail-Adress Prüfung obs valide ist?

  Alt 30. Jul 2018, 11:50
Ich glaube ich entferne einfach dieses Feature, das übersteigt meinen Horizont. Meine 5 Punkte Theorie will ich zumindest einmal umgesetzt haben um daraus zu Lernen wie die Dinge so funktionieren/funktioniert haben.
Link verschicken, User klickt Link, das bedarf doch WebServer?

Was ich vorhatte war:
Registrier-Dialog öffnet sich, Anwender gibt Daten ein, auch eine eMail Adresse, dahinter sollte ein grüner Haken bzw gelbes Fragezeichen erscheinen, mehr nicht. Ist grüner Haken da werden mehr features im Programm aktiv, ohne das ich weiß wer es benutzt, das ist mir zu diesem Zeitpunkt noch egal. Ob da nun einer "Angela@Merkel.de" eintippt oder sonst was ist mir auch egal. Ich wollte damit nicht prüfen ob Anwender derjenige ist der sagt er ist dieses oder jenes. Nur Grundsätzlich als Gimmick ein "Existiert diese eMail-Adresse oder eben nicht" um die GUI aufzuhübschen.
Später wollte ich für Support/Kauf eine sende mail funktion integrieren das man mir Bugs Wünsche Freischaltung etc schicken kann. An dieser Stelle sollte halt geprüft werden ob derjenige auch ist wer er vorgibt zu sein.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz