Guten Tag allerseits,
ich habe gerade ein Problem mit NotesDocument.EncryptOnSend bei zeitgesteuerten Serveragents. Ich frage mich gerade, ob ich einen Denkfehler habe, oder ob das generell nicht geht.
- Der Empfänger ist ein normaler Notes-User, der auch einen Public-Key im Adressbuch hat.
- Der Agent läuft zeitgesteuert auf einem Server und mit "Run on behalf of" dem Server, damit der Absender immer der Server ist, auch wenn ich den Agent zuletzt signiert habe.
- Ich setze NotesDocument.EncryptOnSend = True und versende dann mit NotesDocument.Send(False) (SendTo ist schon als Empfänger gesetzt).
(- Der Agent läuft aus anderen Gründen mit "Allow restricted operations")
Die Mail kommt dann unverschlüsselt beim Empfänger an.
Wenn ich den selben Agent im Designer selbst ausführe, kommt die Mail verschlüsselt an, aber mit meinem Absender. Wenn ich "Run on behalf of" entferne, kommt die Mail verschlüsselt an, wenn ich den Agent zuletzt signiert habe (mit meinem Absender) und unverschlüsselt, wenn der Agent vom Server signiert ist (und dann den Server als Absender hat). In den letzten beiden Fällen wurde der Agent mit "tell amgr run..." auf dem Server gestartet.
Ich bin mir also ziemlich sicher, dass der Unterschied darin besteht, ob der Agent in einem Userkontext oder einem Serverkontext läuft. Aber mir leuchtet nicht ein, warum das einen Unterschied machen sollte?! Verschlüsselt wird ja mit dem Public Key des Empfängers und das ist in beiden Fällen der gleiche User (nicht meiner, ein anderer). Signiert wird die Mail nicht.
Ist das so gewollt, dass ein Server das nicht kann? Oder muss ihm das erst noch irgendwie beigebracht werden? In der Doku finde ich dazu nichts. Da steht nur, dass der Public Key des Empfängers gefunden werden muss, was ja auch logisch ist. Ich versteh nicht so wirklich, warum das nicht geht?!
Gruß
SD