Pošljite e-pošto s programom PowerShell
Z Windows Powershell lahko pošiljate e-pošto neposredno iz sistema. To je na splošno razmeroma preprosto, v praksi pa pogosto ne uspe, ker se morate še vedno overiti pri ponudniku pošte. Pokazali vam bomo, kako deluje.
Pošljite pošto s programom PowerShell
Iz varnostnih razlogov PowerShell ne dovoljuje, da bi gesla za poštni strežnik ostala v navadnem besedilu v skriptu. Zato morate te podatke šifrirati zunaj in jih z trikom integrirati.
- Za pošiljanje pošte uporabite ukaz "Send-Mailmessage", ki podpira vse običajne parametre. Podrobnejše informacije o tem najdete v "Get-Help Send-Mailmessage".
- Vsaj potrebujete pošiljatelja, prejemnika, zadevo in vsebino ter strežnik odhodne pošte.
- Če strežnik ni izrecno prenesen, PowerShell uporablja vsebino spremenljivke "$ PSEmail Server". Tako lahko ta strežnik za večkratno pošiljanje shranite vnaprej v skriptu ali še bolje v svoj lastni profil PowerShell.
- Če želite to narediti, odprite profilno datoteko z "note pad.exe $ profile" in dodajte na primer ukaz "$ PS EmailServer =" smtpmail.t-online.de "". Kot vrednost uporabite strežnik, odgovoren za svoj poštni račun.
- Vendar pa mnogi poštni strežniki zahtevajo prijavo z uporabniškim imenom in geslom. Vsaj prvi se lahko prenese s parametrom »poverilnica«, ko ga pokličemo. Ko je izveden, skript pokaže prijavno okno, v katerem je treba vnesti manjkajoče geslo. Vendar je to nepraktično in neprimerno za naloge skripta v ozadju.
- Ker gesla ni mogoče prenesti neposredno v skriptu, morate vsakič ustvariti zahtevani objekt PSCredence z branjem gesla iz šifrirane datoteke. Če želite ustvariti to datoteko, uporabite ukaz »(Get-Credential) .password | Pretvori iz SecureString> geslo.txt «.
- V naslednjem tipičnem pogovornem oknu za prijavo vnesite »Uporabniško ime« in »Geslo« in potrdite s »V redu«. PowerShell zdaj šifrira geslo in ga shrani v datoteko »geslo, določeno kot ciljno. txt ".
- Kasneje lahko v skriptu tam najdete geslo in ga shranite kot spremenljivko z »$ password = Get-Content password.txt | ConvertTo-SecureString. "
- Zdaj ustvarite potreben poverilni objekt z ukazom »$ poverilnice = sistem novega sistema-pogona.Automation.PSCredential» Uporabniško ime «, $ geslo«. Končno ta predmet prenesete prek »Pošlji pošiljanje sporočil« s parametrom »poverilnica $ poverilnica«.