Send e-mail fra en aliasadresse i Office 365 – Sådan gør du
Når du bruger en aliasadresse til at sende en mail, bevares denne i "Afsender" og "Svar-til"-felterne for modtageren. Modtageren vil kun se din aliasadresse og ikke din primære e-mailadresse.
Forudsætning: Aktiver "Send fra alias" i Admin Center (Ændringer kan ta op til 60 minutter for at slå igennem)
Funktionen skal aktiveres af din administrator, før den kan bruges. Dette gøres i Exchange Admin Center under Indstillinger > Mailflow ved at aktivere Turn on sending from aliases eller via PowerShell med kommandoen:
Set-OrganizationConfig -SendFromAliasEnabled $true
Sådan konfigurerer du dine aliasadresser i Outlook (Desktop og Web)
Før du kan vælge en aliasadresse i "Fra"-feltet, skal du aktivere den i Outlooks indstillinger. Denne proces er stort set den samme i både Outlook Desktop og Outlook på nettet.
Trin 1: Åbn Indstillinger og find afsenderadresser
-
Åbn Outlook (på desktop eller på nettet).
-
Klik på Indstillinger (tandhjuls-ikonet).
-
Gå til sektionen Mail > Skriv og svar (på engelsk: Mail > Composes and reply).
-
Rul ned til Adresser at sende fra (på engelsk: Addresses to send from).
Trin 2: Aktivér og administrer dine aliasadresser
-
Klik på Aktivér.
-
Et vindue vil åbne, hvor alle dine godkendte aliasadresser vises.
-
Her kan du vælge hvilke aliasadresser, der skal være tilgængelige i din "Fra"-menu ved at markere eller fjerne markeringen i afkrydsningsfelterne.
-
Gem indstillingerne.
Sådan sender du en e-mail fra din aliasadresse
Når dine aliasadresser er aktiveret, er de nemme at bruge.
-
Opret en ny mail.
-
Klik på Fra-feltet (hvis det ikke er synligt, skal du aktivere det via "Vis..."-menuens indstillinger).
-
Vælg den ønskede aliasadresse direkte fra dropdown-menuen. Du behøver ikke at indtaste den manuelt.
Nu vil din e-mail blive sendt fra aliasadressen, og modtageren vil kun se denne som afsender.
param(
[string]$UserOverwrite
)
$user = (([adsisearcher]"(&(objectCategory=User)(samaccountname=$env:username))").FindOne().Properties)
if ($UserOverwrite) {
$user = (([adsisearcher]"(&(objectCategory=User)(samaccountname=$UserOverwrite))").FindOne().Properties)
Write-Host "Testing with user: $UserOverwrite"
}
if (!$user) {
Write-Error "User not found in Active Directory"
exit 1
}
$folderLocation = $Env:APPDATA + '\Microsoft\Signatures'
$filename = "AD Signature"
$file = "$folderLocation\$filename"
$companyName = "Company Name"
$logo = "Logo link"
$logoURL = "Logo URL"
$companyPhone = "Phone Number"
$slogan_1 = "Slogan"
$considerPrint = "Please consider the environment before printing this email"
if (!(Test-Path -Path $folderLocation)) {
New-Item -ItemType Directory -Path $folderLocation -Force
}
$userProperties = @{
DisplayName = if ($user.name.Count -gt 0) { $user.name[0] } else { $null }
JobTitle = if ($user.title.Count -gt 0) { $user.title[0] } else { $null }
Email = if ($user.mail.Count -gt 0) { $user.mail[0] } else { $null }
Company = if ($user.company.Count -gt 0) { $user.company[0] } else { $null }
Mobile = if ($user.mobile.Count -gt 0) { $user.mobile[0] } else { $null }
DirectDial = if ($user.homephone.Count -gt 0) { $user.homephone[0] } else { $null }
Telephone = if ($user.telephonenumber.Count -gt 0) { $user.telephonenumber[0] } else { $null }
Website = if ($user.wwwhomepage.Count -gt 0) { $user.wwwhomepage[0] } else { $null }
PoBox = if ($user.postofficebox.Count -gt 0) { $user.postofficebox[0] } else { $null }
Office = if ($user.physicaldeliveryofficename.Count -gt 0) { $user.physicaldeliveryofficename[0] } else { $null }
Street = if ($user.streetaddress.Count -gt 0) { $user.streetaddress[0] } else { $null }
City = if ($user.l.Count -gt 0) { $user.l[0] } else { $null }
State = if ($user.st.Count -gt 0) { $user.st[0] } else { $null }
ZipCode = if ($user.postalcode.Count -gt 0) { $user.postalcode[0] } else { $null }
}
$Group = [ADSI]"LDAP://CN=Signature_CompanyLogo,OU=Signature,OU=Security Groups,OU=Users,DC=contoso,DC=dk"
$Group.Member | ForEach-Object {
if ($user.distinguishedname -match $_) {
$logo = "Alternative Logo Link"
}
}
$style = @"
<style>
p, table, td, tr, a, span {
font-family: Calibri, Helvetica, sans-serif;
font-size: 11pt;
color: #000000;
}
span.blue {
color: #000000;
}
table {
margin: 0;
padding: 0;
}
a {
text-decoration: none;
}
hr {
border: none;
height: 1px;
background-color: #000000;
color: #000000;
width: 700px;
}
.Contact {
width: 150px;
}
table.main {
/* Main table styles */
}
</style>
"@
$htmlSignature = @"
<span>Med venlig hilsen/Kind regards/Mit freundlichen Grüssen</span><br />
$(if ($userProperties.DisplayName) { "<span><b>$($userProperties.DisplayName)</b></span><br />" })
$(if ($userProperties.JobTitle) { "<span>$($userProperties.JobTitle)</span><br /><br />" })
<p>
<table class='main'>
<tr>
<td colspan='2' style='padding-right: 75px;'>
$(if ($logo) { "<a href='$logoURL'><img src='$logo' /></a>" })
</td>
</tr>
<tr>
<table>
$(if ($userProperties.Telephone) { "<tr><td class='Contact'>Hovednummer: </td><td><a href='tel:$companyPhone'>$companyPhone</a></td></tr>" })
$(if ($userProperties.Mobile) { "<tr><td class='Contact'>Mobil: </td><td><a href='tel:+45 $($userProperties.Mobile)'>+45 $($userProperties.Mobile)</a></td></tr>" })
$(if ($userProperties.Email) { "<tr><td class='Contact'>Email: </td><td><a href='mailto:$($userProperties.Email)'>$($userProperties.Email)</a></td></tr>" })
$(if ($userProperties.Website) { "<tr><td class='Contact'>Website: </td><td><a href='https://$($userProperties.Website)'>$($userProperties.Website)</a></td></tr>" })
</table>
<table>
<tr>
<br/>
<br/>
<br/>
</tr>
<tr>
<td colspan='2' style='padding-bottom: 10px;'>
$(if ($companyName) { "<b>$companyName</b><br/>" })
$(if ($userProperties.Street) { "$($userProperties.Street)<br/>" })
$(if ($userProperties.ZipCode) { "$($userProperties.ZipCode) " })
$(if ($userProperties.City) { $userProperties.City })
</td>
</tr>
<tr>
<td colspan='2'>
<p>$slogan_1</p>
</td>
</tr>
</table>
</tr>
</table>
</p>
<br />
"@
$style + $htmlSignature | Out-File "$file.htm" -Encoding UTF8
$textSignature = @"
Med venlig hilsen/Kind regards/Mit freundlichen Grüssen
$(if ($userProperties.DisplayName) { $userProperties.DisplayName })
$(if ($userProperties.JobTitle) { $userProperties.JobTitle })
$(if ($userProperties.Telephone) { "Hovednummer: $companyPhone" })
$(if ($userProperties.Mobile) { "Mobil: +45 $($userProperties.Mobile)" })
$(if ($userProperties.Email) { "Email: $($userProperties.Email)" })
$(if ($companyName) { $companyName })
$(if ($userProperties.Street) { $userProperties.Street })
$(if ($userProperties.ZipCode) { $userProperties.ZipCode }) $(if ($userProperties.City) { $userProperties.City })
"@
$textSignature | Out-File "$file.txt" -Encoding Default
$outlookVersions = @(
@{ Version = "16.0"; Path = "HKCU:\Software\Microsoft\Office\16.0" },
@{ Version = "14.0"; Path = "HKCU:\Software\Microsoft\Office\14.0" }
)
foreach ($outlook in $outlookVersions) {
$commonPath = $outlook.Path + "\Common"
if (Test-Path $commonPath) {
if (Test-Path "$commonPath\General") {
Set-ItemProperty -Path "$commonPath\General" -Name "Signatures" -Value "Signatures" -Force
}
if (Test-Path "$commonPath\MailSettings") {
Set-ItemProperty -Path "$commonPath\MailSettings" -Name "NewSignature" -Value $filename -Force
Set-ItemProperty -Path "$commonPath\MailSettings" -Name "ReplySignature" -Value $filename -Force
}
$setupPath = $outlook.Path + "\Outlook\Setup"
if (Test-Path $setupPath) {
Remove-ItemProperty -Path $setupPath -Name "First-Run" -ErrorAction SilentlyContinue
}
}
}
Write-Host "Signature generated successfully for $($userProperties.DisplayName)"
Brugsanvisning:
Normal brug (som logonscript):
Test kørsel:
.\Script.ps1 -UserOverwrite "Initialer"
Funktioner:
-
Henter brugerinformation automatisk fra Active Directory
-
Genererer både HTML og tekst-version af signaturen
-
Understøtter flere Outlook-versioner (2010, 2016, Office365)
-
Mulighed for at teste med specifikke brugere
-
Dynamisk logo baseret på AD-gruppemedlemskab
-
Automatisk opsætning af Outlook-signatur
Bemærk: Husk at tilpasse AD-stier, company information og logo-stier til din organisation før brug.
Sådan forbinder du til Exchange Online PowerShell - Den komplette guide
Er du træt af at rode med Exchange Online PowerShell-forbindelser? Skal du sikre dig, at dine scripts er opdaterede og sikre? Så er du kommet til det rette sted!
🚀 Kom i gang på få minutter
Forbindelse til Exchange Online er blevet nemmere og mere sikker end nogensinde før. Her er hvordan du kommer i gang:
Installation af modulet
Install-Module -Name ExchangeOnlineManagement
Update-Module -Name ExchangeOnlineManagement
Grundlæggende forbindelse
💡 Eksempler fra den virkelige verden
Her er hvordan du bruger forbindelsen i praksis:
Get-MailboxStatistics -Identity "[email protected]" |
Select-Object DisplayName, TotalItemSize
Get-Mailbox -ResultSize Unlimited |
Where-Object {$_.UserPrincipalName -like "*@firma.dk"}
🔒 Sikkerhedsbestemmelser du skal kende
Disconnect-ExchangeOnline -Confirm:$false
Connect-ExchangeOnline -CertificateThumbprint "XYZ123" -AppId "GUID" -Organization "contoso.onmicrosoft.com"
🛠️ Troubleshooting tips
Fejler forbindelsen? Prøv disse løsninger:
-
Kør Import-Module ExchangeOnlineManagement
-
Tjek at du har nyeste PowerShell-version
-
Prøv at køre som administrator
-
Sikr internetforbindelse til Office 365 endpoints
Husk at tjekke din session:
Get-ConnectionInformation
Get-Command -Module ExchangeOnlineManagement
📈 Pro-tips til avanceret brug
-
Brug -ShowProgress $true ved store datasæt
-
-Verbose giver detaljeret output til fejlfinding
-
Gem dine scripts i VS Code med syntax highlighting
-
Brug variabler til gentagne elementer
🎯 Opsummering
Exchange Online PowerShell er et kraftfuldt værktøj, og med de rigtige forbindelsesmetoder får du:
-
Hurtigere arbejdsgang - automatisér gentagne opgaver
-
Bedre oversight - få fuld kontrol over din Exchange-miljø
-
Øget sikkerhed - moderne authentication som standard
Klar til at automatisere dine Exchange-opgaver? Hvad vil du gerne optimere i din hverdag? Del dine spørgsmål og erfaringer nedenfor! 👇
Har du brug for hjælp til specifikke scenarier? Spørg away - vi hjælper gerne!