Exchange Online一覧

NO IMAGE

Exchange Web Service (EWS) の試し方

Exchange Web Service (EWS) を気軽に試す方法はありませんが、EWSEditor を使用して操作を行い、通信を Fiddler で確認するとどのような通信を行っているのかが確認できます。そのため、ここでは EWSEditor を使用して Exchange Online の EWS に接続する方法を紹介します。実際に EWS を使用するアプリケーションを開発する場合は、これらの通信を EWS Managed API を使用しながら (もちろん使用しないことも可能) 実装することになります。なお Exchange Online では EWS よりも Microsoft G...

NO IMAGE

Outlook REST API の試し方

Outlook REST API を試すには Outlook Sandbox を使用するのが簡単です。ですが自分で用意した Client ID を使用したり、アプリケーションの権限を使用したりすることはできません。そのため、ここでは Office365APIEditor を使用して Outlook REST API の動作を検証する方法を紹介します。紹介するのはメールの取得方法のみですが、同じ要領で他の権限を使用して様々な情報にアクセスができます。Office365APIEditor の通信を Fiddler で取得すれば、どのような通信が行われているのか確認することができます。 実際に O...

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...

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

Exchange Online の PowerShell では以下のように警告が出力されることがあります。 この警告の内容をスクリプトで取得するには、コマンド自体を Invoke-Command で実行して、WarningVariable で取得します。以下のようにします。 $warn = "" Invoke-Command -Command {Get-Mailbox -ResultSize 1} -Session:(Get-PSSession) -WarningVariable warn こうすると、WarningVariable に指定した変数を参照することで警...

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...

代理人の設定や非公開の予定を表示する権限を 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

Graph API で Exchange Online のメールボックスを作成する

Graph API では Exchange Online のメールボックスの作成はできないと思われがちですが、ユーザーの作成とライセンスの割り当てを行うことができるので、結果としてメールボックスの作成を行うことができます。 Step 1. ユーザーの作成 まずはユーザーを作成します。ポイントとしては、この時に usageLocation を指定することです。この例では JP (日本) を指定しています。 HTTP request POST Request body { accountEnabled:true, displayName:"testUser05", mailNickname:...

NO IMAGE

Outlook.com と Exchange Online の統合

Outlook.com と Exchange Online の統合がどんどん進んでいるようです。 先日より Office 365 API でいわゆる v2 endpoint を使った開発ができるようになりました。これにより、開発者は接続先が Outlook.com なのか Office 365 なのかを区別せずに同じ認証方式を使用して同じリクエストを投げることができるようになりました。 ただしこれは Outlook.com 側がまだ対応を開始したばかりなので、対応していないアカウントに接続すると MailboxNotEnabledForRESTAPI などのエラーが発生します。メイ...