AD情報を使用したOutlook2010/2013署名の生成
この記事では、ActiveDirectoryのデータに基づいてOutlook2010/2013でユーザー署名を自動的に作成する方法を説明します。次のシナリオが考慮されます。新しいドメインユーザーがワークステーションに初めてログオンすると、PowerShellスクリプトは、ActiveDirectoryから取得した連絡先情報を含むOutlookユーザー署名ファイルを自動的に生成します。
このスクリプトが正しく機能するためには、ADのすべてのユーザーが必要なすべての属性で満たされている必要があります。この例では、ユーザーの署名に次のActiveDirectory属性を使用します。
- 完全なユーザー名(私の場合、これらのデータはDescription属性に保存されます)
- 位置(タイトル)
- 会社名(会社)
- 郵便番号、市区町村、住所(PostalCode、City、StreetAddress)
- 電話番号(OfficePhone)
- Eメール(メール)
- ウェブサイト(ホームページ)
htmでOutlookの署名テンプレートを使用して3つのファイルを作成する必要があります (HTML)、 rtf (リッチテキスト)および txt (プレーンテキスト)フォーマット。これらのファイルの署名テンプレートのデザイン、内容、および外観は、企業の電子メール署名ポリシーの要件に準拠している必要があります。
ファイルsignature.htmを作成します 次のHTMLコードが含まれています:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head></head>
<body>
<div id style="font-family:Arial&;color:#5B9BD5;">
<span style="font-size:10pt;color:#000000;">
<b><p>Best Regards</p>
<p>@NAME</p> </span>
<span style="font-size:9.0pt;">
<p> </p>
<p>@DESCRIPTION</p>
<p>@COMPANY</p></b>
<p> </p></span>
<span style="font-size:8.0pt;">
<p> @POSTALCODE, @CITY, @STREETADDRESS</p>
<p> Phone.@OFFICEPHONE</p>
<p> <a href="https://@WEBSITE">@WEBSITE</a></p>
<p>e-mail:<a href="mailto:@EMAIL">@EMAIL</a></span>
</div>
</body>
</html>
signature.rtfの内容 およびsignature.txt ファイルは次のようになります:
Best Regards,
@NAME
@DESCRIPTION
@COMPANY
@POSTALCODE, @CITY, @STREETADDRESS
Phone. @OFFICEPHONE
e-mail:@EMAIL
site:@WEBSITE
OutlookSignatureフォルダーを作成します C:\ Users \ Public \ Downloads Outlookの署名テンプレートとコンピューターユーザーの署名を保存します。 C:\ Users \ Public \ Downloads \ OutlookSignatureで、サブフォルダーテンプレートを作成します。 署名テンプレートを含む3つのファイルをコピーします。手動で行うことも、グループポリシー設定(GPP)を使用して行うこともできます。
新しいファイルを作成するoutlooksignature.ps1 次のPowerShellコードを使用します(コードの各ブロックについて簡単に説明します)
変数のセットを決定します。 $ User変数には、スクリプトが実行されるアカウントからのユーザーの名前が含まれます。ファイルの名前と拡張子、およびファイルへのパスを他の変数で指定します。
$User = $env:UserName
$FileName = "signature"
$FileExtension = "htm","rtf","txt"
$Path = "C:\Users\Public\Downloads"
$PathSignature = "$Path\OutlookSignature"
$PathSignatureTemplates = "$Path\OutlookSignature\Templates"
$PathSignatureUser = "$PathSignature\$User"
$AppSignatures =$env:APPDATA + "\Microsoft\Signatures"
PowerShellモジュールをインポートしてADにアクセスします。 Get-ADUserコマンドレットを使用して、必要なActive Directoryのユーザー属性の値を取得し、それらを$AD_userオブジェクトに保存します。
注 。 Get-ADUserコマンドレットをWindows7で機能させるには、RSATをコンピューターにインストールする必要があります。コンポーネントWindowsPowerShell用ActiveDirectoryモジュール また、有効にする必要があります([コントロールパネル]->[プログラムと機能]->[Windowsの機能のオン/オフ]->[リモートサーバー管理ツール]->[役割管理ツール]->[ADDSおよびADLDSツール]。
Import-module activedirectory
$AD_user = Get-ADUser $User -Properties Title,Company,Description,Fax,HomePage,Mail,OfficePhone,PostalCode,City,StreetAddress
ユーザー署名ファイルを保存するフォルダーを作成し、そのフォルダーにテンプレートをコピーします。
New-Item -Path "$PathSignature\$User" -ItemType Container –Force
foreach ($Ext in $FileExtension)
{
Copy-Item -Force "$PathSignatureTemplates\$FileName.$Ext" "$PathSignatureUser\$FileName.$Ext"
}
次に、 replaceを使用します 機能、テンプレートのデータをADのユーザーデータに置き換えます:
foreach ($Ext in $FileExtension)
{
(Get-Content "$PathSignatureUser\$FileName.$Ext") | Foreach-Object {
$_`
-replace "@NAME", $AD_user.Description `
-replace "@DESCRIPTION", $AD_user.title `
-replace "@COMPANY", $AD_user.Company `
-replace "@STREETADDRESS", $AD_user.StreetAddress `
-replace "@POSTALCODE", $AD_user.PostalCode `
-replace "@CITY", $AD_user.City `
-replace "@OFFICEPHONE", $AD_user.OfficePhone `
-replace "@EMAIL", $AD_user.Mail `
-replace "@WEBSITE", $AD_user.Homepage `
} | Set-Content "$PathSignatureUser\$FileName.$Ext"
}
これで、署名テンプレートを含むファイルを、Outlook 2010/2013/2016が署名を保存するフォルダーにコピーする必要があります– %APPDATA%\ Microsoft \ Signatures (C:\ Users \ username \ AppData \ Roaming \ Microsoft \ Signatures)。
foreach ($Ext in $FileExtension)
{
Copy-Item -Force "$PathSignatureUser\$FileName.$Ext" "$AppSignatures\$User.$Ext"
write-host "$PathSignatureUser\$FileName.$Ext"
write-host "$AppSignatures\$User.$Ext"
}
Outlookで起動時に署名テンプレートとともにこれらのファイルを使用できるようにするには、次の手順を実行します。
- 初回実行を削除します HKEY_CURRENT_USER \ Software \ Microsoft \ Office \
\ Outlook \ Setup
からの値 - HKEY_CURRENT_USER \ Software \ Microsoft \ Office \
\ Common \ MailSettingsで、 NewSignatureという名前の2つの文字列値を作成します。 およびReplySignature 、テンプレート名と署名が含まれます(この場合、テンプレート名はADアカウント名と同じです)
さまざまなMSOfficeバージョンで作業するには、次のコードを追加する必要があります:
#Office 2010
If (Test-Path HKCU:'\Software\Microsoft\Office\14.0') {
Remove-ItemProperty -Path HKCU:\Software\Microsoft\Office\14.0\Outlook\Setup -Name First-Run -Force -ErrorAction SilentlyContinue -Verbose
New-ItemProperty HKCU:'\Software\Microsoft\Office\14.0\Common\MailSettings' -Name 'ReplySignature' -Value $User -PropertyType 'String' -Force
New-ItemProperty HKCU:'\Software\Microsoft\Office\14.0\Common\MailSettings' -Name 'NewSignature' -Value $User -PropertyType 'String' -Force
}
#Office 2013
If (Test-Path HKCU:'\Software\Microsoft\Office\15.0') {
Remove-ItemProperty -Path HKCU:\Software\Microsoft\Office\15.0\Outlook\Setup -Name First-Run -Force -ErrorAction SilentlyContinue -Verbose
New-ItemProperty HKCU:'\Software\Microsoft\Office\15.0\Common\MailSettings' -Name 'ReplySignature' -Value $User -PropertyType 'String' -Force
New-ItemProperty HKCU:'\Software\Microsoft\Office\15.0\Common\MailSettings' -Name 'NewSignature' -Value $User -PropertyType 'String' -Force
}
ユーザーがシステムにログインするときに、グループポリシー設定を使用してこのPowerShellスクリプトを1回実行するだけです。その結果、Outlookは送信メール用に作成した署名を使用します。記事の最初の画像は、この署名のサンプルを示しています。
いくつかのヒント
- Outlookが行間に大きな(二重の)スペースがあるHTM署名を表示する場合、それはOutlookのバグです。 OutlookでHTM署名を作成し、それをテンプレートとして使用することをお勧めします(%APPDATA%\ Microsoft \ Signaturesに保存されています)
- ActiveDirectoryのthumbnailPhoto属性から署名にユーザー写真を追加することもできます。上記の項目のように、Outlookの署名に画像を追加する簡単な方法はないため、Outlookで任意の画像を含む署名テンプレートを作成し、PowerShellスクリプトのテンプレートフォルダーにある画像ファイルをコピーして置き換えることをお勧めします。 (画像は%AppData%\ Microsoft \ Signatures \
.files に保存されます 。 - Exchange 2007以降では、トランスポートルールを使用してすべてのメールに最も簡単な署名を挿入できます
-
Outlook 2016、2013、または 2010 の PST データ ファイルを自動的にバックアップする方法。
このチュートリアルでは、フリーウェアの Outlook 2016 および Outlook 2013 バックアップ アドイン を使用して、Outlook PST データ ファイルを自動的にバックアップする詳細な手順を説明します。 . Outlook 2016 および Outlook 2013 バックアップ アドインは、Outlook 2010、2013、または 2016 バージョンの Outlook バックアップ プロセスを自動化する信頼性の高いフリーウェア ツールです。 Outlook 2016、2013、または 2010 の .PST データ ファイルを自動バックアップする方法 1.
-
Outlook で電子メールの署名を追加する方法
競合他社よりも目立ち、ビジネスに精通しているように見せる最も簡単な方法は、Outlook で個人のメール署名を有効にすることです。 Outlook の電子メール署名を付けることで、クライアントに追加情報を提供するだけでなく、ブランドを通じてすべてのメッセージに権限を与えることができます。したがって、電子メールの署名を設定することは理にかなっています。特に、Microsoft がすべてのデバイスで電子メールの署名を同期するオプションを有効にしたためです。この記事では、Outlook アカウントに電子メールの署名を追加する最良の方法をいくつか見ていきます。それでは、早速始めましょう。 Outlo