NO IMAGE

Office 365 Reporting web service の MessageTraceDetail をローカライズする

リファレンスには以下のように書いてありますが、きちんと Accept-Language ヘッダーをつけてあげると MessageTraceDetail のレスポンスはローカライズされます。 Explicitly set the Accept-Language HTTP request header. Currently there is nothing localized that comes through the Reporting web service, but that can change, and if your customers are using a differe...

Outlook Web アドインをVisual Studioでデバッグする方法

Outlook Web アドイン (JavaScript API for Office を使用したデスクトップ版 Outlook 用のアドイン) を Visual Studio でデバッグするには、デバッグしたいタイミングで Visual Studio などのデバッガーが起動するように、Outlook が内部で使用している Internet Explorer の設定を変更する必要があります。テスト環境の構成により細かな違いがある可能性がありますが、手順を紹介します。 Outlook Web アドインを Visual Studio でデバッグする方法 デバッグを行う端末の Inte...

Exchange Online の PowerShell で警告出力を取得する方法

Exchange Online の PowerShell では以下のように警告が出力されることがあります。 この警告の内容をスクリプトで取得するには、各コマンドに用意されている WarningVariable パラメーターを使用します。 $Warn = "" Set-Mailbox ExoUser01 -WarningVariable Warn こうすると、WarningVariable に指定した変数を参照することで警告出力の内容を取得できます。 以下は補足です。以前は Exchange Online への接続が Remote Pow...

NO IMAGE

Office 365 で利用可能なメッセージング関連 API について

Office 365 の一部である Exchange Online ではメールや予定表など様々な機能がありますが、これらの各ユーザーのメールボックス上の情報にプログラムからアクセスするためにいくつかの API が用意されています。 様々なアプローチがあるため API も多数ありますが、ここでは EWS / Office 365 API (Outlook REST API) / Microsoft Graph にフォーカスを当てて説明します。 EWS EWS (Exchange Web Services) は、もともとオンプレミスの Exchange 2007 以降で導入された W...

Format-List コマンドの結果をプロパティの名前でならべかえる

Get-Mailbox などのコマンドの実行結果を fl (Format-List) で出力すると各プロパティが表示されますが、もしかするとこれをアルファベット順で表示させたいという状況があるかもしれません。 こんな時はこちらのぺージを参考にするとよいでしょう。 ただしこの方法ではもともと表示されていた以下の情報が表示されません。 PSComputerName PSShowComputerName RunspaceId これらはリモート PowerShell 接続に関する内容のため、特に意識する必要はない情報ですが、もし必要ということであれば Get-Mem...

NO IMAGE

Export-TransportRuleCollection コマンドの中身を見る

トランスポート ルール関連のコマンドとして Export-TransportRuleCollection コマンドと Import-TransportRuleCollection コマンドがあります。 基本的にこれらはその名前の通りトランスポート ルールのエクスポートとインポートを行うためのコマンドであり、設定内容を取得したり確認したりするためのものではありません。 設定内容を取得するには Get-TransportRule コマンドを使用するべきです。 ですが Export-TransportRuleCollection コマンドの出力内容としては XML でラップされた New-...

代理人の設定や非公開の予定を表示する権限を PowerShell で確認する方法

いままでは代理人の設定や非公開の予定を表示するかどうかについては、Outlook や EWS でないと確認ができませんでした。これが Exchange Online の PowerShell でできるように、しれっと機能が強化されています。ただし予定表フォルダー限定です。 例えば EXO の OWA で以下のように代理人と非公開の予定を表示する設定を行ったとします。 そして以下のようにコマンドを実行します。ユーザー名やフォルダー名は適宜読み替えてください。 すると以下のように SharingPermissionFlags に Delegate と CanVie...

Remote PowerShell コマンドの既定の出力内容

2018/08/01 Update 2018 年 5 月ごろより順次 Get-Mailbox コマンドの既定の出力が Name, Alias, Database, ProhibitSendQuota, ExternalDirectoryObjectId に変更されています。 Exchange Online の PowerShell に接続して Get-Mailbox コマンドを実行すると、既定で Name / Alias / ServerName / ProhibitSendQuota の 4 つが出力されているはずです。 Get-Mailbox コマンドの結果を fl する...

NO IMAGE

多要素認証を使用した Exchange Online PowerShell の裏側

TechNet にも記載の通り、Exchange Online に接続する PowerShell で MFA が利用できるようになっています。 Remote PowerShell の制約で OAuth が使えなかったはずですが、動作を見るとどうも OAuth を使っているように見えます。 今回は内部動作を見てみたいと思います。 TechNet に従って Exchange 管理センターからモジュールをダウンロードすると、Microsoft Exchange Online PowerShell というアプリケーションがインストールされています。 このアプリケーションを起動すると Power...

NO IMAGE

Exchange 管理シェルとリモート PowerShell のデータ型の違い

Exchange 管理シェルとリモート PowerShell では、データ型が異なる場合があります。 例えばトランスポート ルールで承認者が設定されている場合は ModerateMessageByUser で確認できます。 Exchange 管理シェルでは、以下の通り System.Array クラスを継承している RecipientIdParameter 型の配列です。 一方、リモート PowerShell では以下の通り ArrayList 型です。 この型の違いが、要素数を取得する際に影響します。 RecipientIdParameter 型の配列では Length プロパ...