Exchange Onlineでユーザのメール署名情報を一括取得する方法

メールの署名について、みなさんの会社ではどのような運用をしていますか?

「記載内容が網羅されていればデザインは各自にお任せ」「デザインも全社で統一」等、各社様々ですが、ユーザそれぞれどのような署名にしているか把握したくありませんか?

今回はシステム管理者がユーザのメール署名情報を一括取得する方法をご紹介します。

リリースされて日が浅い設定で日本語の情報が少なく、また、デメリットもあるため必ず事前に日本マイクロソフトのサポートセンターにご確認ください。

某弊社ではOutlook on the Webを標準としているため、Outlookアプリは未検証です。

メリット、デメリット

メリット①管理者が全ユーザのメール署名情報を取得できるため、自社にふさわしくないフォーマットを是正することができる
デメリット①ユーザは署名を1つしか設定できない(通常は複数設定可能)
②ユーザが作成した署名が消えたように見える

デメリット②については、新規導入時に実施することでデメリットにはなりません。

以降はコマンドを実行するとどのような変化があるかを確認していきます。

事前準備

1.設定前後の違いを確認するため、Outlook on the Webに2つの署名を設定します。

2.PowerShellでExchange Onlineに接続し、コマンドを実行します。

Get-Organizationconfig

初期値はPostponeRoamingSignaturesUntilLaterがFalseになっています。

設定変更

3.PowerShellでPostponeRoamingSignaturesUntilLaterの値を変更します。

Set-Organizationconfig -PostponeRoamingSignaturesUntilLater $:true

4.PostponeRoamingSignaturesUntilLaterの値を確認します。

Get-Organizationconfig

PostponeRoamingSignaturesUntilLaterがTrueに変わりました。

5.PowerShellで全ユーザの署名情報を取得するコマンドを実行します。

Get-Mailbox -resultsize unlimited -RecipientTypeDetails usermailbox | Get-Mailboxmessageconfiguration | select identity,signaturehtml

全ユーザの署名が消えている??

クライアントに反映されるまでタイムラグがあるため、翌日まで放置します。

6.Outlook on the Webの署名を確認します。

 +新しい署名ボタンがなくなっているため署名が1つしか作成できません。

 事前に作成した署名が2つとも消えています。

7.PowerShellでExchange Onlineに接続し、PostponeRoamingSignaturesUntilLaterの値を確認します。

Get-Organizationconfig

昨日設定したTrueのままになっています。

8.PowerShellで全ユーザの署名情報を取得するコマンドを実行します。

Get-Mailbox -resultsize unlimited -RecipientTypeDetails usermailbox | Get-Mailboxmessageconfiguration | select identity,signaturehtml

昨日消えた時の状態のままです。

署名新規作成

9.異なるデザインの署名を作成します。

設定後の変化がわかるよう、全く異なるデザインにしています。

10.PowerShellで全ユーザの署名情報を取得するコマンドを実行します。

Get-Mailbox -resultsize unlimited -RecipientTypeDetails usermailbox | Get-Mailboxmessageconfiguration | select identity,signaturehtml

署名新規作成後、値が変わった個所があることがわかります。

11.PowerShellでこのアカウントの署名情報を確認します。

Get-MailboxMessageConfiguration -Identity メールアドレス |fl

SignatureTextにテキスト形式の署名、SignatureHtmlにHTML形式の署名が設定されていることが確認できます。

12.PowerShellで署名情報一覧をCSV出力します。

get-mailbox -resultsize unlimited | Get-MailboxMessageConfiguration |select identity,signaturetext,signaturehtml | Export-Csv -encoding utf8 -notypeinformation "c:\temp\signature.csv"

ユーザが作成した署名情報をCSV出力できていることが確認できます。

この状態で3.のコマンドで$:falseにすると、翌日には1.の状態に戻っています。

Set-Organizationconfig -PostponeRoamingSignaturesUntilLater $:false

すでに稼働中の方は、Microsoft365開発者プログラムで検証してみてください。

タイトルとURLをコピーしました