Envoyé Email GMAIL depuis un BAT
Bon,
Voilà la méthode pour envoyer ça depuis un BAT en utilisant Powershell.
Il faut préalablement "Autoriser les applications moins sécurisées à accéder à votre compte"
https://support.google.com/accounts/.../6010255?hl=fr
Le compte étant celui que vous allez définir dans la variable $Username du code ci-dessous.
En faît c'est le compte qui va envoyer l'Email.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
::By SachaDee 2016
::Use and Abuse It !!@!
@echo off&cls
set $Username='Ton_Acompte_Gmail@gmail.com'
set $Password='Le_Mot_De_Passe'
set $to='Le_Destinataire_@xmail.com'
set $subject='Le Sujet'
set $body='Le Message'
set $AttFile='C:\chemin\vers\le\fichier\annexe\test.txt'
set $SMTPServer='smtp.gmail.com'
set $SMTPPort='587'
powershell.exe -command "$message = New-Object System.Net.Mail.MailMessage;$message.subject = %$subject%;$message.body = %$body%;$message.to.add(%$to%);$message.from = %$username%;$smtp = New-Object System.Net.Mail.SmtpClient(%$SMTPServer%, %$SMTPPort%);$smtp.EnableSSL = $true;$smtp.Credentials = New-Object System.Net.NetworkCredential(%$Username%, %$Password%);$att = new-object Net.Mail.Attachment(%$AttFile%);$message.Attachments.Add($att);$smtp.send($message)" |
Bien entendue a n'utiliser qu'en interne par vous même. Si vous voulez un système un peu plus sûr exporter vos credential dans un XML et importer ce xml en utilisant ce script
ainsi votre MDP sera crypté dans le XML.
Pour generer ce XML :
- Dans la console Powershell :
Code:
$MyCredentials=GET-CREDENTIAL -Credential "'Ton_Acompte_Gmail@gmail.com" | EXPORT-CLIXML SecureCredentials.xml
ensuite entrer le MDP dans la fenêtre qui s'ouvre et envoyer.
ça generera un fichier XML de ce genre :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| <Objs Version="1.1.0.1" xmlns="http://schemas.microsoft.com/powershell/2004/04">
<Obj RefId="0">
<TN RefId="0">
<T>System.Management.Automation.PSCredential</T>
<T>System.Object</T>
</TN>
<ToString>System.Management.Automation.PSCredential</ToString>
<Props>
<S N="UserName">Ton_Acompte_Gmail@gmail.com</S>
<SS N="Password">01000000d08c9ddf0115d1228c7a00c04fc297eb0100000045195692056717d44bf346db621c53c30000000000200000000001066000000010000200000002844ab97789282cc362a723550be732d0a39d714334433012d419039cc6c6ae7000000000e8000000002000020000000435772a1c2978513e249a8fd83b3b869a5d6be0e7630ce1ebfa4f01f1849664d2000000050eb2d423b5a2a4bd0ca0f508e2633e385f0e029516d959abaed2df6e4f0c2f6400000007b7e79da231422aa730bf45040f528822b970755d12747f76faff75d2171645f25b597329339262e6f5c4c8b83229f12e2f04a057a33f8897b96db15ffb9a995</SS>
</Props>
</Obj>
</Objs> |
Pour utiliser ces credential depuis le XML :
Code:
$MyCredentials=IMPORT-CLIXML SecureCredentials.xml
Donc le MDP sera crypté mais il est clair qu'avec ce fichier XML je pourrai utiliser ton compte GMAIL pour envoyer des mails ou autres.
L'avantage de cette technique et que tu peux faire un script générique en éliminant le $username et $password. Il suffit de créer le fichier XML pour le compte GMAIL
qui va être utilisé et voilà.
C'était juste pour montrer cette possibilité. :mouarf:
;)