Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Einloggen in Email-Adresse (https://www.delphipraxis.net/165424-einloggen-email-adresse.html)

Lyan 30. Dez 2011 00:15

Delphi-Version: 2010

Einloggen in Email-Adresse
 
Hallo,

ich wollte fragen, wie ich am schnellste rausfinde, ob ein E-Mail Account valide ist.
Meine Email ist z.B. "maxmustermann@web.de" und mein Passwort ist "maxmuster".
Wie kann ich in Delphi am schnellsten mir zurückgeben lassen, ob Username und Passwort stimmen?
Möchte ungern mit TidHTTP arbeiten, ist glaube ich relativ langsam in sowas, oder?

Delphi-Quellcode:
[web]

web.de/fm

service=freemail&server=https%3A%2F%2Ffreemail.web.de&onerror=https%3A%2F%2Ffreemail.web.de%2Fmsg%2Ffailure.htm&onfail=http%3A%2F%2Fweb.de%2Ffm%3Fstatus%3Dlogin-failed&username=lyanik%40web.de&password=adfsdfsdf&jsenabled=true
Ich habe mich noch nicht soviel damit beschäftigt und weiß nicht genau was ich da mitsenden muss ect..
Also kurz gesagt soll das Programm nur schauen, ob der Login funktioniert hat. :)

Wäre für eine kleine Anleitung bzw. Hilfen dazu sehr dankbar!


MfG

Lyan

blawen 30. Dez 2011 00:46

AW: Einloggen in Email-Adresse
 
Zitat:

Zitat von Lyan (Beitrag 1143685)
Wie kann ich in Delphi am schnellsten mir zurückgeben lassen, ob Username und Passwort stimmen?

Nun, herausfinden kann dies Delphi nicht direkt - Du kannst nur die Rückmeldung vom Webserver interpretieren.
Aber vielleicht solltest Du etwas konkreter werden, damit Dir weitergeholfen wird. Im Moment klingt Dein Vorhaben etwas "speziell" und wenig Vertrauenserweckend...

fkerber 30. Dez 2011 00:57

AW: Einloggen in Email-Adresse
 
Hi,

soll das nur für web.de funktionieren oder generell für alle möglichen Email-Adressen?


LG, Frederic

Lyan 30. Dez 2011 01:32

AW: Einloggen in Email-Adresse
 
Hallo.

Um erstmal die Frage zu beanworten ob es nur für Web.de sein soll.

Mir geht es jetzt nicht speziell um "web.de". Ich wollte einfach mal allgemein wissen ob das machbar wäre. Ich würde es gerne anhand von Web.de lernen, da meine Email bei web liegt.

Viel diskreter kann ich leider nicht werden, da es sonst keine Funktionen geben soll.

Ich würde einfach mal gerne lernen wie das beim Login (z.B. web.de) so abläuft.

Mein Vorhaben ist einfach:

1. Schicke POST-Daten zu http://web.de/fm
2. Empfange Daten von Server und gib aus ob Login erfolgreich oder nicht

Mehr ist da nicht gewollt von mir :)

MfG

Lyan

Luckie 30. Dez 2011 02:04

AW: Einloggen in Email-Adresse
 
Also, ob eine E-Mail Adresse ein gültiges Format hat, kann man wohl recht einfach mit einem regulärem Ausdruck feststellen. Ob diese E-Mail Adresse nun auch zu einem gültigen Konto gehört, kann man nur herausfinden, wenn man versucht sich mit der E-Mail Adresse und dem zugehörigen Passwort auf dem Server anzumelden.

Was erwartest du jetzt, was da groß passieren soll? Entweder wird die Anmeldung akzeptiert oder abgelehnt.

Lyan 30. Dez 2011 02:12

AW: Einloggen in Email-Adresse
 
Zitat:

Zitat von Luckie (Beitrag 1143689)
Also, ob eine E-Mail Adresse ein gültiges Format hat, kann man wohl recht einfach mit einem regulärem Ausdruck feststellen. Ob diese E-Mail Adresse nun auch zu einem gültigen Konto gehört, kann man nur herausfinden, wenn man versucht sich mit der E-Mail Adresse und dem zugehörigen Passwort auf dem Server anzumelden.

Was erwartest du jetzt, was da groß passieren soll? Entweder wird die Anmeldung akzeptiert oder abgelehnt.

Jap, und genau das möchte ich ja wissen.

Wie stelle ich eine verbindung zu web.de her und wie logge ich mich auf web.de mit einem usernamen und einem passwort dort ein.

Wie kann ich anschließend feststellen ob der login fehlgeschlagen ist, oder ob es geklappt hat?


MfG

Luckie 30. Dez 2011 02:21

AW: Einloggen in Email-Adresse
 
Versuch deine E-Mails mit dem POP3 Protokoll abzuholen. Sollte es zu Fehlern kommen, kannst du diese auswerten.

Du kannst jetzt entweder alles selber programmieren mit Sockets und was du senden musst bzw. was der Server erwartet, kannst du hier http://www.ietf.org/rfc/rfc1939.txt nachlesen. Oder du nimmst eine POP3 Komponente aus einer entsprechenden Komponentensammlung. Kommt drauf an wie viel Arbeit du dir machen willst bzw. wie wissensdurstig du wirklich bist.

mjustin 30. Dez 2011 08:06

AW: Einloggen in Email-Adresse
 
Zitat:

Zitat von Lyan (Beitrag 1143690)
Zitat:

Zitat von Luckie (Beitrag 1143689)
Was erwartest du jetzt, was da groß passieren soll? Entweder wird die Anmeldung akzeptiert oder abgelehnt.

Jap, und genau das möchte ich ja wissen.

Wie stelle ich eine verbindung zu web.de her und wie logge ich mich auf web.de mit einem usernamen und einem passwort dort ein.

Wie kann ich anschließend feststellen ob der login fehlgeschlagen ist, oder ob es geklappt hat?

Die Webseite wird in ihrer Antwort (HTTP Response) nicht sagen, ob es eine gültige Emailadresse ist. Weil man für die Anmeldung ein gültiges Passwort verwenden muss, kennt man in der Regel (als Accountinhaber) beides ja schon.

Update: prinzipiell geht es mit jeder HTTP-client fähigen Bibliothek, also Indy oder Synapse. Das Tempo ist in der Regel kein Problem. Im Internet gibt es zum Stichwort Indy HTTP POST viele Beispiele. (Kompliziert wird es sobald SSL (HTTPS) verwendet wird.)

Luckie 30. Dez 2011 08:17

AW: Einloggen in Email-Adresse
 
Also dass er sich auch mit zugehörigem Passwort anmeldet, habe ich jetzt mal vorausgesetzt.

himitsu 30. Dez 2011 09:23

AW: Einloggen in Email-Adresse
 
Rausfinden?
Garnicht.

Ja, man kann den Server ansprechen, aber viele Server geben keine Anzwort mehr, bzw. eine Falsche, wenn ein nichtexistierender Mailccount angesprochen wird oder das Passwort falsch ist.
(ergibt beides die gleiche Antwort, damit man nicht erkennt, ob der Account existiert und man nur noch das Passwort erraten muß)
Bedanken könnt ihr euch dafür bei den Spammailversendern.

generic 30. Dez 2011 09:24

AW: Einloggen in Email-Adresse
 
Der Titel deiner Anfrage ist falsch. Du fragst was anderes.

Zitat:

ich wollte fragen, wie ich am schnellste rausfinde, ob ein E-Mail Account valide ist.
Lucky gab ja bereits den Tipp mit den Regulären Ausdruck.
Wenn diese Prüfung erfolgreich war, würde ich versuchen den zugehörigen Emailserver zu ermitteln.

Dieses geht via DNS-Abfrage. Du nimmst den Domänenteil der Email, in deinem Beispiel "web.de" (alles hinter dem @ Zeichen) und fragst das DNS System nach einen MX Record.

Unter CLI sieht das so aus:
Code:
U:\>nslookup -querytype=mx web.de

Nicht autorisierende Antwort:
web.de MX preference = 100, mail exchanger = mx-ha02.web.de
web.de MX preference = 100, mail exchanger = mx-ha01.web.de

mx-ha02.web.de internet address = 217.72.192.188
mx-ha01.web.de internet address = 217.72.192.149
Es gibt hier zwei Server mx-ha01.web.de und mx-ha02.web.de.

Ungültige Einträge sehen so aus:
Code:
*** qaqaq.de wurde von ### nicht gefunden: Non-existent domain.
Sollte es nun kein MX geben, dann muss noch der A-Record abgefragt werden.

Gibt es dort auch keinen Eintrag dann ist die Domain der Email nicht in der Lage eine Email zu empfangen. Das ist natürlich gleich zu setzen mit: Email ungültig.

Der vordere Teil der Email ist nicht prüfbar (ohne den vollständigen Zugang zu dem Email Konto - also Benutzername, Password und zuständige Server).

Benutzername muss nämlich nicht der Email entsprechen.
Emails könnten weitergeleitet sein zu anderen Konten.
Der Empfangsserver muss auch nicht der Server sein, wo die Kunden Ihre Email abholen. Ein Mailserver kann als Relay dienen und zu anderen Server weiter schicken.

Luckie 30. Dez 2011 09:29

AW: Einloggen in Email-Adresse
 
Lucky? Who the F**k is Lucky? :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:49 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz