BrunovskyR | Kontrola attachementu, vymazanie, zapis do mailu a do logu |
| Mam upravenu mailovu sablonu, kde mam agenta na kontrolu priloh "pred prichodom novej posty" na servri:
Sub Initialize extensions("vbs") = "VBS attachments" extensions("vbe") = "VBE attachments" extensions("pif") = "Program Interface Files" extensions("scr") = "Screen Saver Files" extensions("exe") = "Executables" extensions("com") = "Executables" extensions("avi") = "Video" extensions("mpg") = "Movies" extensions("mpeg") = "Movies" extensions("mid") = "MID music" extensions("mpa") = "MP3 music" extensions("mp3") = "MP3 music" extensions("qt") = "QT music" extensions("mp2") = "MP3 music" extensions("vob") = "VOB music" extensions("ogg") = "OGG music" extensions("ogm") = "OGM music" extensions("mp4") = "MP4 music" extensions("mov") = "Video" extensions("asf") = "Video" extensions("wmv") = "Video" extensions("wma") = "Video" extensions("wm") = "Video"
filenames("mybabypic.exe") = "VB Worm" filenames("nakedwife.exe") = "VB Worm" filenames("message.zip") = "Virus" Dim session As New NotesSession Set db = session.CurrentDatabase Set doc = session.DocumentContext
Dim emphasize As NotesRichTextStyle Set emphasize = session.CreateRichTextStyle emphasize.Bold = True emphasize.NotesColor = COLOR_RED
Dim FileExtension As String Dim LogEntries As String LogEntries = doc.UniversalID Checker = False Forall o In doc.Items If (o.Type = ATTACHMENT) Then Set attach = doc.GetAttachment(o.Values(0)) 'nacita FileName LowerCase filename = Lcase(attach.Source) 'zisti priponu FileExtension = Right$(filename, Len(filename)-Instr(1,filename,".")) Do Until (Instr(1,FileExtension,".")=0) FileExtension = Right$(FileExtension, Len(FileExtension)-Instr(1,FileExtension,".")) Loop 'Does attachment fix the stripping requirement If (Iselement(extensions(FileExtension)) = True) Or (Iselement(filenames(Lcase(filename)))) Then Checker = True 'rozbali prilohu On Error Resume Next dest = Trim(filelocation) & Trim(doc.UniversalID) & Trim(filename) Call attach.ExtractFile(dest) On Error Goto 0 'vymaze prilohu Call attach.Remove 'prida do spravy Set body = doc.GetFirstItem("Body") Call body.AddNewLine(1) Call body.AppendStyle(emphasize) Call body.AppendText("Príloha pošty bola automaticky kontrolovaná: " & filename) LogEntries = LogEntries + ":" + Trim(filename & " od " & doc.From(0) & " odstránené z " & db.Title) End If End If End Forall If checker Then 'Prida zaznam do tela mailu Call body.AddNewLine(1) Call body.AppendText("Nevhodný obsah bol odstránený") Call doc.Save(True, False) Dim agentlog As New NotesLog("Mail Stripper Log") Call agentlog.OpenNotesLog("", logdbfile) 'Ulozi zaznam do "Mail Stripper Log" Call agentlog.LogAction(LogEntries) 'Zavrie log Call agentlog.Close End If End Sub
Deklaracie mam tu: Dim db As NotesDatabase Dim doc As NotesDocument Dim attach As NotesEmbeddedObject Dim filename As String Dim extensions List As String, filenames List As String Dim body As Variant Dim Checker As Variant
Konstanty tu: Const filelocation = "e:\StripFiles\sf_" Const logdbfile = "StripFiles\misMailStripperLog.nsf"
PROBLEM: agent sa mi spusti, ale nechce mi ukladat pri volani metody ExtractFiles (Call attach.ExtractFile(dest) ) vybrany atachement do adresara na servri. Inak vsetko zbehne korektne, odmaze mail, zapise do tela mailu spravu o kontrole a zapise aj do logu cinnosti agenta. | Mirek Navratil | Restricted agent | 02.11.2006 11:31:24
ID: 1953.1
| Zkusil bych zkontrolovat nasledujici: pokud agent saha na filesystem pak je povazovan za 'restricted' a musi mit prislusna prava. | BrunovskyR | Kontrola attachementu, vymazanie, zapis do mailu a do logu | IT
02.11.2006 13:39:48
ID: 1953.2
| resignoval som sablonu so serverovskym id a uz mi to beha |
|