Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Mail und 'Server erforder gesicherte Authentifizierung' (https://www.delphipraxis.net/59011-mail-und-server-erforder-gesicherte-authentifizierung.html)

Klaus D. 15. Dez 2005 20:08


Mail und 'Server erforder gesicherte Authentifizierung'
 
Hallo
Um mit OutlookExpress fehlerfrei Senden zu können ohne vorher Post abzuholen muß ich die Option 'Server erforder Authentifizierung'
setzen.

Ich schreibe gerade selber eine Mailfunktion(nur senden -Fehlerberichterstattung).Dazu nutze ich die FastNet Komponente 'NMSMTP1'.
Nur habe ich das Problem ,daß ich immer eine Fehlermeldung bekomme wenn ich nicht vorher mit irgend einen Mailclienten die Post abgeholt habe. sprich SMTP after POP.

Was ist eigentlich ' Server erforder Authentifizierung' und wie realisiere ich das in meiner Procedur.
ich denke der Fehler liegt da dran.

Delphi-Quellcode:
  NMSMTP1.Host                                := 'post.strato.de';
  NMSMTP1.UserID                              := 'Passwort';
  NMSMTP1.Connect;
  NMSMTP1.PostMessage.FromAddress             := 'Absender';
  NMSMTP1.PostMessage.ToAddress.Text          := Edit1.Text;
  NMSMTP1.PostMessage.Body.Text               := Edit3.Text;
  NMSMTP1.PostMessage.Attachments.Text        := 'c:\File.txt';
  NMSMTP1.PostMessage.Subject                 := Edit2.Text;
  NMSMTP1.SendMail;
  ShowMessage('Mail gesendet !');
  NMSMTP1.Disconnect;
Danke Klaus
Es ist sehr wichtig

Luckie 15. Dez 2005 20:20

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Bist du sicher, dass die UserID das Passwort ist?

Union 15. Dez 2005 20:52

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Hi,

smtp ist ein unsicheres Protokoll. Um zu vermeiden, dass jemand einen Server als Relay verwendet, ist es üblich, dass smpt Nachrichten nur akzeptiert werden, wenn die selbe IP gleichzeitig mit POP3 angemeldet wird. Die "sicherer Authentifizierung" bedeutet also nichts anderes, als dass vor dem Senden die Nachrichten über POP3 abgeholt werden. Der Verbindúngsabbau von Port 110 soll dabei erst nach Beenden der Übertragung erfolgen.

Klaus D. 15. Dez 2005 21:13

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Danke aber was heißt das jetzt?
Ich betrete mit der Internet Programmierung totales Neuland:
Ist es möglich mir'n bisserl Code zur Verfügung zustellen damit ich ansatzweise einen Überblick bekomme,
wie ich an das Problem richtig ran gehe.
Danke Klaus

Basilikum 15. Dez 2005 23:50

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Da stimmt nicht ganz alles...

Zitat:

Zitat von Union
smtp ist ein unsicheres Protokoll.

Ansichtssache - z.B. im SSL Tunnel oder mit CRAM-MD5-Authentication ist es recht sicher...

Zitat:

Zitat von Union
Um zu vermeiden, dass jemand einen Server als Relay verwendet, ist es üblich, dass smpt Nachrichten nur akzeptiert werden, wenn die selbe IP gleichzeitig mit POP3 angemeldet wird. Der Verbindúngsabbau von Port 110 soll dabei erst nach Beenden der Übertragung erfolgen.

Wenn die Server tatsächlich fordern würden, dass gleichzeitig zum Versenden über SMTP eine POP3-Session offen sein muss, würde wohl der Mail-Versand mit den meisten E-Mail-Clients scheitern... in aller Regel wird eine Nachlaufzeit definiert; z.B. bis 3 Minuten nach dem letzten Login per POP3 werden Mails per SMTP von der selben IP noch akzeptiert...

Zitat:

Zitat von Union
Die "sicherer Authentifizierung" bedeutet also nichts anderes, als dass vor dem Senden die Nachrichten über POP3 abgeholt werden.

Der Begriff sichere Authentifizierung könnte für verschiedenes stehen... allerdings meiner Meinung nach nicht für Deine Definition... ich würde sichere Authentifizierung mit AUTH CRAM-MD5 oder AUTH NTLM in Verbindung bringen... dies sind zwei Verfahren, wie der SMTP-Server überprüfen kann, ob der Client das korrekte Kennwort kennt, ohne dass es als solches über die "unsicher" Verbindung (Internet) gesendet werden muss...

Insofern stellt sich die Frage, ob die verwendete SMTP-Komponente ein solches Authentifikations-Verfahren unterstützt... diese sind leider nicht im Grund-Standard (RFC) von SMTP enthalten... es sind freiwillige (teils proprietäre) SMTP-Extensions...

Union 16. Dez 2005 08:04

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Die Indy Komponenten unterstützen auch die "sichere" Authentifizierung nach RFC 2554 (SMTP Service Extension for Authentication). Dazu muss die Property AuthenticationType auf atLogin gesetzt werden. Ausserdem müssen die Properties UserName und Password dann stimmen.

xaromz 16. Dez 2005 08:09

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Hallo,

als erstes solltest Du mal feststellen, welche Authentifizierung der Server erwartet. Dazu verbindest Du Dich über Telnet mit dem Server:
telnet <Name oder IP-Adresse> 25
25 ist der SMTP-Port. Wenn Du verbunden bist, gibst Du ein
ehlo <irgendwas>
Damit grüßt Du den Server. Als Antwort kommt jetzt eine Liste mit den Features des Servers. Hier mal ein Beispiel:
Code:
250-PIPELINING
250-SIZE 104857600
250-VRFY
250-ETRN
250-AUTH LOGIN PLAIN
250-AUTH=LOGIN PLAIN
250 8BITMIME
Wichtig ist die Zeile mit AUTH. Diese zeigen, dass der Server LOGIN und PLAIN Authentifizierung kann (AUTH= ist nur für kaputte Mail-Clients).
Jetzt kannst Du schauen, wie Du die Authentifizierung löst bzw. wir können Dir besser helfen.

Gruß
xaromz

Union 16. Dez 2005 17:00

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Hallo,

ergänzend zu Xaroms Ausführung solltest Du Dir unbedingt mal SMTP Hardcore ansehen. Dort sind die Grundlagen verständlich beschrieben und eine Menge Links gibt's auch.

Klaus D. 16. Dez 2005 17:19

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Hallo
so eine Menge Info's.
werd mich übers WE mit befassen und mich gegebenenfall's noch mal melden.
Danke Danke !!

Klaus D. 29. Dez 2005 14:51

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Zitat:

Die Indy Komponenten unterstützen auch die "sichere" Authentifizierung nach RFC 2554 (SMTP Service Extension for Authentication). Dazu muss die Property AuthenticationType auf atLogin gesetzt werden. Ausserdem müssen die Properties UserName und Password dann stimmen.
Hallo...war im Urlaub,deshalb geht es erst jetzt weiter.
Ich bekomme es einfach nicht gebacken,ich finde an der 'NMSMTP1'Komponente keine möglichkeit die gesicherte Authentifizierung einzustellen.und der Tipp mit TelNet geht auch nicht so wie es soll.
Es wäre toll die Diskusion noch einmal zum Leben zu erwecken.
Danke ...Klaus

Klaus D. 29. Dez 2005 16:30

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Hallo...ich noch mal
Habe von Telnet ne Antwort bekommen.
Host: post.strato.de

  • 250-ENHANCEDSTATUSCODES
    250-PIPELINING
    250-8BITMIME
    250-SICE
    250-DSN
    250-AUTH CRAM-MD5 PLAIN LOGIN
    250 HELP

kann denn damit wirklich jemand etwas anfangen um mir zu helfen
Es ist echt wichtig!!!
Danke Klaus

xaromz 29. Dez 2005 21:30

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Hallo,
Zitat:

Zitat von Klaus D.
Habe von Telnet ne Antwort bekommen.
Host: post.strato.de
  • 250-ENHANCEDSTATUSCODES
    250-PIPELINING
    250-8BITMIME
    250-SICE
    250-DSN
    250-AUTH CRAM-MD5 PLAIN LOGIN
    250 HELP
kann denn damit wirklich jemand etwas anfangen um mir zu helfen

also, das sagt uns schon mal, dass Dein Server SMTP-Auth kennt die Varianten Plain, Login und CRAM-MD5 versteht. Plain und Login sind die zwei einfachsten. Deshalb sollte es eigentlich reichen, wenn Du Benutzernamen und Passwort in die entsprechenden Properties einträgst. Möglicherweise musst Du noch irgendwo ein Auth-Verfahren auswählen.
Leider sind die FastNet-Komponenten seit Delphi 7 nicht mehr dabei, deshalb kann ich das auch nicht testen. Ich kann aber sagen, dass es mit den Indy-Komponenten wunderbar funktioniert. Du kannst sie Dir ja mal runterladen (http://www.indyproject.org), vielleicht kannst Du Dein Programm ja schnell anpassen.

Gruß
xaromz

Klaus D. 30. Dez 2005 10:02

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Moin
werd ich Downlooooden und einpflegen,bei Problemen würde ich mich wieder melden und um Hilfe bitten :-)
Danke Klaus

Klaus D. 30. Dez 2005 10:45

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Ich noch mal
Mein D6 enthält schon Indy Komponenten. kann ich die Kompo's nutzen.
oder welche Indy Komponenten genau brauche ich.
Indy 10 habe ich mir trotzdem runtergeladen habe aber Angst beim Setup mein Delphi zu zerhauen.
Danke Klaus

marabu 30. Dez 2005 10:56

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Hallo Klaus,

da man im Indy-Projekt gerne mal alles ändert, wenn es dem Fortschritt nützt, schränkst du die Zahl der potentiellen Helfer stark ein, wenn du die "falsche" Version verwendest. Welche Version ist denn bei dir installiert?

Grüße vom marabu

Klaus D. 30. Dez 2005 15:35

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Ich bekomme nicht raus welche Indykomponente inst. ist.
In meiner Delphi-Demo habe ich ein Project...schaut es euch bitte mal an.
ev. siehst du welche Komponenten ich nutze.

Project mit exe
die exe ist mit 'upx'gepackt und gepackt lauffähig
Projekt ohne exe

Ich möchte, daß der User einfach mit Hilfe einer von mir zur Verfügung gestellten
Adresse ein Formular ausfüllt und als Anhang verschickt(an mich)

Danke Klaus

marabu 30. Dez 2005 17:22

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Hallo Klaus,

in einem EKON6 session teaser habe ich gelesen, dass Delphi6 mit Indy8 und Delphi7 mit Indy9 ausgeliefert wurde. Falls du nie etwas nachinstalliert hast, bist du jetzt mit Indy8 eventuell etwas einsam. Indy10 ist zwar aktuell, aber nach meiner Einschätzung der Beiträge hier im Forum ist Indy9 deutlich weiter verbreitet. Nutzt alles nichts - nur Indy10 beherrscht SASL (CRAM MD5) - deine NetManage Komponenten (NMS) eher nicht.

Wenn du aus deinem Programm heraus einen Mail-Versand anstoßen möchtest, dann bedenke, dass nicht jeder user einen SMTP-Server zur Verfügung haben könnte. Da es für Indy9 eine MailClient-Demo gab, erwarte ich eine entsprechende Demo auch für Indy10.

Grüße vom marabu

Klaus D. 30. Dez 2005 17:38

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Zitat:

Wenn du aus deinem Programm heraus einen Mail-Versand anstoßen möchtest, dann bedenke, dass nicht jeder user einen SMTP-Server zur Verfügung haben könnte.
Das verstehe ich nicht.Der Versand der E-Mehl aus meinem Programm läuft doch über meine in meinem Programm fest eingebundenen Verbindungsdaten(Adresse,Passwort,Server...usw)

sollte ich also auf Indy 10 umsatteln.
meine letzten beiden Installationsversuche sind fehlgeschlagen.

Trotzdem riesen Dank für die Hilfe....Klaus

marabu 30. Dez 2005 17:58

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Du gibst deine eigenen Verbindungsdaten aus der Hand? Das tut mir fast körperlich weh - warum machst du soetwas? Deine Mail Adresse musst du schon mitliefern, aber doch nicht deine eigenen credentials für den Zugang zum Server deines Providers. Da sollen die Benutzer doch bitte ihre eigenen Angaben für ihren eigenen Provider machen. Als dein Provider würde ich dir die Weitergabe deiner credentials sogar verbieten.

marabu

Klaus D. 30. Dez 2005 18:09

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Du hast recht!!Da habe ich mir auch schon drüber Gedanken gemacht.....aber ohne unfair zu werden...70% aller User sind doch mit den Angaben die er machen müßte restlos überfordert?

Deshalb war ja mein Grundgedanke auch über den Standart-MailClienten auf dem Rechner des Users den Anhang zu verschicken.
wie machen das denn andere Programmierer?
oder gar die so genannten Würmer?
also weiterlesen....Danke Klaus

Klaus D. 31. Dez 2005 13:15

Re: Mail und 'Server erforder gesicherte Authentifizierung'
 
Hallo
Ich noch mal
Ich werde es mit ' mapi' lösen. Ich greife einfach auf den StandartMailClienten des User's zurück.
Für'n Anfang wird es erst mal gehen.
Danke für euer Bemühen.
Ein gesundes neues Jahr wünsche ich allen in diesem GEILEN Forum !!!!!
Klaus


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:55 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