Office365バージョンアップで実行されるコマンドと注意点

先月より本格的に日本でも開始されたOffice365のバージョンアップですが、その裏側でどんなことが行われているかについて少し調べてみたいと思います。

ご存じの通り、Exchangeは管理者のコマンド(参照以外)実施は「管理者監査ログ」を見ることにより調べることができますので、早速バージョンアップしたテナントの管理者監査ログを取り寄せてみます。

管理者監査ログは、Exchange管理センターの[コンプライアンス管理][監査]のメニューから[管理者監査ログのエクスポート]を選択します。アップグレードを含む適切な期間と、結果を受領するメールボックスを選択して[エクスポートを]選択します。通常、数時間待つとメールで管理者監査ログが届きます。

20130720_01
20130720_02

管理者監査ログは、XMLファイルの形式です。1つ1つのイベントは、<Event Caller=…>で始まり、</Event>で終わります。

アップグレードが実施された時間帯を元に探すと、”NT AUTHORITYSYSTEM (Microsoft.Exchange.ServiceHost)”からの命令で実施されている一連のコマンドが表示されます。ほとんどが、Set-MailboxPlan、Set-CASMailboxPlanなどのユーザーに開放されていないコマンドレットやInstall-GlobalSettingsContainer、Install-DataClassificationConfigなどのアップグレード用に作成されたであろう特別なコマンドレットになっています。

ここで、以前の投稿で紹介したアップグレードコマンドの実行により一部の設定がデフォルト値に戻ってしまうという現象が再現していないかについて検証してみたいと思います。以前の物はマイナーバージョンアップによる物で、その後の更新によりこちらは設定が保持されるようになりました。が、今回は残念ながら以前紹介した3つのパラメータ

Set-RemoteDomain AutoForwardEnabled True
AutoReplyEnabled True
Set-OrganizationConfig MailTipsLargeAudienceThreshold 25

については元に戻ってしまうようです。
20130720_03

また、当然と言えば当然なのですが、このタイミングでSet-OwaMailboxPolicyでPublicFoldersEnabledがTrueになってたりなどもしてます。

Exchangeをお分かりの方で、何かUpgrade後に挙動がおかしいと思った場合には管理者監査ログを調べられるのも良いかもしれませんね。

Exchange OnlineのIPv6

Office365では、当初IPv6はサポートせずにIPv4のみでの接続となっていました。

ただ、その後のバージョンアップなどの際に、ポータルや 以前の記事 にあるPowerShellのエンドポイントなどから先行して、徐々にIPv6対応が進んで行っています。

新しいバージョンのExchange Onlineでは、クライアントアクセスの一部もIPv6で接続できるようになるようです。

そもそも、新しいバージョンのExchange Onlineでは、POP/IMAPからの接続先やSMTPの接続先がユーザー毎では無く、全て固定で

  • pop: outlook.office365.com
  • imap:  outlook.office365.com
  • smtp:  smtp.office365.com

と設定されております。この共用で使われているサーバープールへの接続がIPv6で有効化されました。

20130527_01

よって、試しにIPv4/v6のデュアルスタックのサーバーからopensslとかでIMAPに接続して認証要求を出してみると、社内IP帯以外からのアドレスを拒否するように設定しているオンプレミスのADFSサーバでは以下の様なログが表示されてアクセスが拒否されます。

20130527_02

x-ms-forwarded-client-ipの欄に、2001:2e~というIPv6アドレスがしっかり記録されています。

というわけで、アクセス制御をIPv4ベースの物で展開されている方(というか、基本的にはそうかと。サンプルもそうですし)については、少なくとも「意図しないIPv6アドレスからはアクセスされないようにルールが設定されているか」「IPv6化されている社内拠点からのアクセスが拒否されないか」は確認した方が良いかもしれませんね。

ディレクトリ同期環境での配布グループ

Exchange Onlineでメーリングリストとして利用できる配布グループには、配布グループと(メールが有効な)セキュリティグループの2種類があります。また、ディレクトリ同期を有効にしている場合は、それぞれそのグループがオンプレミスのADで環境化で作成した物と、Office365で作成した物で、計4種類のグループが存在します。

今回は、その4種類を以下の通りとして、簡単にその特徴と使い分けについて紹介したいと思います。

①オンプレミスのAD上で作成 ②Office365上で作成
A.配布グループ dg1@contoso-jp.com dg2@contoso-jp.com
B.セキュリティグループ sg1@contoso-jp.com sg2@contoso-jp.com

A,Bの差は、

  • AはExchangeのみで利用できるグループ
  • Bは権限の設定(オンプレミスのファイルサーバーやSharePoint Online)で利用できる

また、①②の差については、

  • ①はActive Directoryでメンバーの変更を行う。この為、Office365で作成されたユーザーをメンバーに加えることはできず、同じくActive Directory上にいるディレクトリ同期されたユーザーのみメンバーにすることができる。
  • ②は、Exchange Onlineの機能でセルフサービス配布グループ(配布グループの作成、削除、配布グループへの参加または脱退をグループの管理者に委任することができる)として構成することができる。
  • ①は作成する際にADSIエディタなどでDisplayNameの属性を直接設定する必要がある。

20130421_01

などが大きいかと思います。

個人的な使い分けとしては、①のオブジェクトは少し作成・設定が面倒なので極力②をベースとして、

  • 社内でファイルサーバの権限などと合わせて設定されている部署・部門毎のグループのみ①-Bとして作成し、人事異動などの際の管理を容易にする。SharePoint Onlineの権限もこのグループを利用する。
  • 特定プロダクトやプロジェクトのMLなどについては②-Aとする。(同グループがSharePoint Onlineサイトを作成する場合は②-Bとする。)

とかがお勧めです。

また、その他として「動的配布グループ」という物が有ります。これは、全ユーザーの属性(例えば部門や住所、個別に設定した拡張属性を含みます)をベースとしたグループになります。このグループは、「唯一メーリングリストのメンバーとして誰が含まれているか、Outlook/OWAなどから見ることができない」物になります。

  • 社外のアドレスや個人の携帯電話のアドレスが含まれているグループ
  • “組合員”など”再雇用者”などの比較的センシティブな情報を取り扱うグループ
  • “首都圏の全ユーザー”などメンテナンスが難しいグループ

などの場合に利用する事が多いかと思います。動的配布グループ自体は、オンプレミスで作成してもディレクトリ同期されないので、Office365側で作成します。(ベースとなる属性情報などはActive Directory側で作成します)

注意点としては、①は配布グループの細かい挙動に関する設定もオンプレミス側で実施する必要があります。デフォルトの設定から変更しなければならない場合は、特にGUIなどは用意されていないので、DisplayNameと同様にADSIエディタなどで直接値を入れなくてはいけません。主な設定項目は以下の通りです。

デフォルト 変更可能な値
配布グループの管理者
(ManagedBy)
Organization Management 任意のユーザー
(※DNを指定します)
メンバー展開後のNDRの送信先
(ReportToOwner,ReportToOriginator)
送信しない ①元の送信者
②配布グループの管理者
配布グループに送信できるメンバー
(msExchRequireAuthToSendTo)
全員 内部のユーザーのみ
グローバルアドレス帳への掲載
(msExchHideFronAddressLists)
載る 載せない

括弧内は対応するActive Directoryの属性。必要に応じてオンプレミスのADのスキーマを拡張する必要があります。

さすがに少し面倒なので、利用する際はPowerShellとかを上手く組み合わせて定型化することをお勧めさせて頂きます。

Small BusinessでExchange管理センターに接続

Exchange Onlineのブラウザによる設定は、通常Exchange管理センター(略EAC、旧ECP:Exchangeコントロールパネル)から実施します。

ただし、新しいOffice 365のSmall Business(Premium含む)については、Exchange、SharePoint、Lyncの設定をそれぞれの画面から実施するのでは無く、管理ポータル上から一元的に実施できるようにインターフェイスが変更されています。

例えば、サービス設定の画面からは予定表の共有やActiveSyncの設定が行えます。
20130320_01 20130320_02 20130320_03

ユーザーとグループからは、外部連絡先/配布グループ/共有メールボックスの作成などが行えます。
20130320_06 20130320_07

ただし、現在の時点で設定できる項目は少なく、従来行えていたようなよりきめ細やかな設定などは実施することができません。

また、OWAの設定メニューの[オプション]を押せば、Exchange管理センターにつながりますが、個人用の設定の画面のみであり、従来接続できた[組織]の設定の画面に行くことができません。(MidsizeBusiness/Enterpriseであれば、上部の[管理者▼]メニューの[Exchange]から接続できますが)
20130320_04

そこで、Exchange管理センターに接続したい場合は、管理者アカウントから上記画面に接続した後、ブラウザのアドレスバーの/ecp/以降の文字列?rfr=owa…以降を全て削除したURL(https: //pod510xx.outlook.com/ecp/ )に対して接続します。そうすると、管理者アカウントのデフォルト画面である組織の管理画面に接続することができます。
20130320_05

PowerShellからの接続同様、【利用できるけどサポート無し】というポリシーでの利用となるかと思いますのでご使用の際にはご留意頂ければと思います。

OWAのカスタマイズ(メイン機能)

新しいOffice365では、今までPowerShellからしか実行できなかった設定変更のうち、利用頻度の高い物をGUI(Exchange管理センター)から実施できるようになりました。今回は、機能のON/OFFのうち、ニーズの多い物について説明したいと思います。
20130317_00

まずは、連絡先(画面上での表記はPeople)についてです。連絡先関係で制御ができるのは、主に以下のパターンです。

  1. ソーシャル連携(LinkedIn、Facebook)を無効化したい
  2. 「全てのグループ」「全ての会議室」などのアドレス帳を無効化したい
  3. グローバルアドレス帳自体を無効化したい
  4. Peopleの表示自体を消したい

1)のソーシャル連携、良く話を受けますがインターネット上の個人のアカウントと会社のメールのアドレス帳の連携は禁止したいという要望は日本の企業としては大きいようです。GUIからは「LinkedIn連絡先の同期」「Facebook連絡先の同期」のチェックを外します。PowerShellから実施する場合は、Set-OwaMailboxPolicyの「-LinkedInEnabled $false」「-FacebookEnabled $false」です。
20130317_08 20130317_09

2)について、Outlookではビル毎の会議室などのアドレス帳のサブセットを作った際に階層構造で表示できるのですが、OWAは名前順になってしまうので、見た目上あまり綺麗じゃないなどの場合に利用します。PowerShellだと「-AllAddressListsEnabled $false」です。

これを適用すると、個人の連絡先の他に[ディレクトリ]だけ表示されるようになります。
20130317_03

3)のグローバルアドレス帳(2番でいう[ディレクトリ])を無効化するというのは、PowerShellからしか実施できませんが、2の設定に加えて「-GlobalAddressListEnabled $false」を指定すれば表示を個人の連絡先だけにするということができます。

この状態でも、メール作成時などに検索をすることはできますので、アドレス一覧で運用するのが現実的では無いような大規模なユーザーではニーズがある設定かと思います。
20130317_02

4)はGUIからであれば[連絡先]のチェックを外す、PowerShellの場合は「-ContactsEnabled $false」で消せます。かなりドラスティックですが、個人の連絡先を消す場合はこの設定になります。前述の通り検索は可能なので、グローバルアドレス帳の検索のみでの運用としたい場合はこの設定にします。
20130317_11

続いては、予定表関係です。 予定表は他のグループウェアなどで管理しているので利用させたくない場合などに利用します。

GUIの場合は[予定表]のチェックボックスを、PowerShellであれば「-CalendarEnabled $false」で予定表自体の表示を消せます。Outlookと併用している場合など必要に応じて[アラームと通知]も消して下さい。
20130317_12

タスク(仕事)に関してはGUIの[タスク]かPowerShellの「-TasksEnabled $false」で設定ができます。私の試した限りでは、環境ではメール下部の[タスク]の表示は消えず、クリックするとタスク画面に移ったのがクリックしてもタスク画面に移れないという挙動に変更になりました。
20130317_06 20130317_07

メモ、OWAからの場合は受信トレイの下部フォルダから見れるようになっているのですが、これも消せます。GUIの[メモ]またはPowerShellの「-NotesEnabled $false」です。
20130317_10

さて、これらを全て消すと、Exchange Onlineしかサブスクリプションを設定しないユーザーはOutlookしか表示されなくなり、かなりシンプルになります。本当に限定的なWebメーラーとしての使い方をしたい場合にはアリかもしれません。
20130317_13

Set-OwaMailboxPolicy OwaMailboxPolicy-Default -TasksEnabled $false -CalendarEnabled $false -ContactsEnabled $false

ただ、将来的には会議室予約やタスク・スケジュールとの連携などExchangeのフル機能を利用し、業務を効率化していく事を是非目指していって欲しいですね。

最後に注意点ですが、これはあくまでOWAから接続できないように設定をしているのみですので、Outlookを利用した場合は普通に利用できます。そちらも合わせて制御するのであればOfficeのポリシーテンプレートとかで制御する必要があります。

OutlookからExchange Onlineに繋がらない

Outlook 2007→2010にアップグレードした直後や再セットアップを掛けた直後に、今まで利用していたExchange Onlineのアカウントに対してパスワード入力が求められ、正しい値を入れても受け付けられなくなる様な事象が発生することがあります。
20130310_02

また、新規でセットアップしたOfficeに新規のアカウントを作成しようとした場合も、同じくパスワードの入力が求められ、プロファイルのセットアップが完了できない事があります。
20130310_03

これは、Outlookが新しいOffice365の必須要件を満たしていない場合に発生します。(Windows Updateにより最新の更新プログラムが当たっている場合には発生しません) Office365向けの更新プログラムは、Outlook 2007の場合はKB2583910、Outlook2010の場合はKB2553248として公開されています。

このプログラムをインストールすることにより、新しいOffice365にも接続できるようになります。

テナントのアップグレードを実施される前に、管理者の方はOutlookの更新プログラムが当たっているかどうかを今一度ご確認されることをお勧め致します。

Office365でのパブリックフォルダの利用

Exchange 2013をベースとしている新しいOffice365では、パブリックフォルダの機能が提供されるようになりました。今回はその使い方について書きたいと思います。

まず、Exchange 2013になってシステム的なパブリックフォルダの実装が少し変わったのでそこを軽く説明します。

Exchange 2010では、パブリックフォルダを利用するためにパブリックフォルダ専用のメールボックスデータベースを作成する必要がありました。また、複製に関しても通常のメールボックスデータベースとは別にレプリケーションを構成する必要がありました。また、クライアントは複数のパブリックフォルダサーバが有る場合は自動的に負荷分散されて接続されるようになっておりました。
20130309_04

Exchange 2013では、パブリックフォルダの利用に専用のデータベースは必要無くなりました。代わりに、通常のユーザーメールボックスが配置されているデータベース上に「パブリックフォルダーメールボックス」という物を作成し、その中でパブリックフォルダを構成します。このパブリックフォルダーメールボックスは、他のメールボックス同様にDAGの仕組みによって複製される為、システムの構成がシンプルにできるようになりました。

ただし、クライアントは常にActive側のみに接続されますので、負荷分散を構成するのはパブリックフォルダーメールボックスの収容設計で実装しなくてはならないという点は注意が必要です。

また、一番最初に作成されたパブリックフォルダーメールボックスは「第1階層」と呼ばれ、ツリー構造のマスターを持っている特別な物になります。(2個目以降は「第2階層」と呼ばれ、第1階層のツリー構造のコピーと、特定フォルダのコンテンツを含みます。)
20130309_05

それでは、Office365からパブリックフォルダを利用してみたいと思います。まず、Exchange管理センター(前のバージョンではExchangeコントロールパネルと呼ばれていました)に接続し、パブリックフォルダーを開きます。
20130309_01

[パブリックフォルダーメールボックス]のタブを開き、+で[パブリックフォルダーメールボックスの新規作成]を開き、第1階層用のメールボックスの任意の名前を入力します。今回は MasterHierarchy と入力し、保存します。
20130309_02

次に、実際にデータを保存するフォルダを作成します。[パブリックフォルダー]のタブから、+を押して[パブリックフォルダーの新規作成]を開きます。今回は営業部用のsalesというフォルダを作ってみたいと思います。
20130309_03

最後に、このフォルダに権限を付与します。Salesをクリックして右側のフォルダーのアクセス許可の[管理]を開きます。下の階層のフォルダには上位の権限が継承されますが、ルートには非表示で「既定」への「作成者(Author)」権限が割り当てられています。今回は一番上に作成するのでデフォルトでは誰も権限を持っていません。任意の所有者、編集者、閲覧者などの権限を適宜ユーザー/グループに対して付与します。
20130309_06

これでサーバー側の準備は完了しましたので、クライアントから接続したいと思います。パブリックフォルダに接続できるのは、「Outlook 2007」「Outlook 2010」「Outlook 2013」もしくは「OWA(ブラウザーからのアクセス)」となっています。

Outlookから接続すると、以下の様に「フォルダー一覧」のメニュー(Crtl+6)の中にパブリックフォルダーが表示され、自由にサブフォルダを作成するなどの利用ができるようになっています。
20130309_07

OWAから接続する場合は、以下の制約事項があります。

  • 通常の[メールと投稿アイテム]のフォルダのみ閲覧できる
  • 新規でフォルダは作成できない
  • アクセス権の設定変更はできない

OWAには「フォルダー一覧」のメニューは提供されていない為に、代わりにお気に入りからアクセスします。お気に入りの上で右クリックし、[パブリックフォルダーの追加]を選択し、パブリックフォルダー一覧が表示されますので、必要なフォルダを選択して追加します。
20130309_08
20130309_09

組織の予定表やTODOなどはOWAからは見れないということになりますので、基本的にはOWAは閲覧専用として使って、メインはOutlookを使えということですかね。

オンプレミスのExchange 2013では、パブリックフォルダーを作成する際に、指定した(第2階層を含む)パブリックフォルダーメールボックスに作成するというオプションがあって、そこでサーバの性能や容量が足りない場合に負荷分散をさせるという構成が取れるのですが、今のところOffice365ではそのオプションがPowerShellからでも指定できない為、第1階層のパブリックフォルダーメールボックス上にしか作成できません。

サービスディスクリプションなどにもパブリックフォルダは○としか書いてないですが、この機能のままで考えると第1階層のメールボックスのクォータ容量である25GBまでが無償で利用できる、という事になるのでしょうか。調査中なので、また分かったら書きたいと思います。

なお、PowerShellを利用するとルートフォルダの権限を付与することができます。管理者(もしくは管理者グループ)に対してowner権限を付ける場合は以下の様なサンプルになります。

New-Mailbox -PublicFolder MasterHierarchy
Add-PublicFolderClientPermission "" -User admin -AccessRights owner
New-PublicFolder -Name sales
Add-PublicFolderClientPermission "sales" -User sales -AccessRights PublishingEditor

[未完]新しいOWAからの検索フォルダーの利用

Outlookを利用されたことがある方は、OWAで最初にメールボックスにログオンした際のフォルダツリーの中に、「未読のメール」「フラグの設定されたメール」などが無い事に気づきます。
20130305_01

これらは、「検索フォルダー」と呼ばれ、事前に設定したある条件を元に、その検索結果を事前にインデックス化して高速に表示してくれる機能で、特に前述のような物は利用されている方も多いかと思います。

このフォルダを作成するには、Outlookのクライアントを使用します。キャッシュモードで検索フォルダーを作成した場合、インデックスがクライアントで実施される(サーバ側に設定されない)ので、キャッシュモードを一時的にOFFにして作業を行う必要があります。
20130305_03

その後検索フォルダを→クリックして[新しい検索フォルダー]を選択し、条件を指定します。
20130305_04
20130305_05

上部のお気に入りに入れたい場合はお気に入りに追加します。
20130305_06

これでOWAでも検索フォルダが見えるように…なりませんでした。
無題

「RSSフィード」は作成されたので、Outlookからは正しく接続できているようなのですが、上手くいきません。従来のバージョンだといけたのですが…Outlookのキャッシュモードを使えば良いという話もありますが、ユーザーによっては結構クリティカルな問題でもありますね。

ただ、Outlookのオンラインモードだとそもそも検索フォルダは作成できるように見えますが、再起動すると消えてしまっているので、そもそも作成できていないのかもしれませんね。

ちょっと調べてみたいと思います。検索エンジンがFASTに変わって何か変わったんですかね?

【新機能】アドレス帳ポリシー(その2)

前回の投稿で、アドレス帳ポリシーを利用してグローバルアドレス帳(GAL)を分割する方法について書きました。Exchangeチームのblogに、Exchangeアドレス帳ポリシーの詳細が記載されておりましたので、その内容について少し触れたいと思います。

The Exchange Team Blog
Address Book Policies, Jamba Jokes and Secret Agents

まず、Office365ですが、作成できるアドレス帳の数に制限があるようです。Eプランのデフォルトの制限数は、以下の通りです。

  • グローバルアドレス帳:10
  • オフラインアドレス帳: 10
  •  アドレス帳ポリシー:10
  •  アドレス帳:40

※アドレス帳40という点が、大企業になると少し厳しいかもしれませんね。

また、Exchange Onlineで初めて実装された機能として、アドレス帳ポリシールーティングという機能があります。

これにより、従来は送信者が送信した時点で名前解決が行われていた物が、それぞれの受信者側のアドレス帳ポリシーに基づいて名前解決されるようになりました。自身のアドレス帳に無いユーザーは、外部から着信した際のようにメールアドレス付きで配送されます。

この機能を有効化するには、以下のPowerShellコマンドレットを実行します。(プレビュー版では開放されてませんでしたが、2/27にGAされた新バージョンではOKでした。)

Set-TransportConfig –AddressBookPolicyRoutingEnabled $True

この機能を実装することにより、アドレスグループをまたぐ配布グループの作成や外部連絡先の作成方法などにさえ気をつければ、かなりの精度でアドレス分割によるマルチテナントチックな利用ができそうですね。
20130304_01

Exchangeのフォルダ名が英語表記になる

Office365で新しくメールボックスを作成した後、たまにログオンしてみるとフォルダ名がInbox, Sent Itemsなど、英語表記になってしまうユーザーが発生することがあります。
20130227_04

確実といえる発生パターンはつかめていないのですが、Exchangeで物理的に最初にメールボックスが作成される際(最初のアクセスの時)に言語の情報が取得できなかった場合に発生することが多く、最初にPOP/IMAPやモバイルからアクセスを試行した際に多く発生するという印象です。

これを修正するには、ブラウザからOWAで行います。OWAでは、最初にアクセスした際に言語とタイムゾーンの入力を促されますが、それを行った後にコントロールパネル(右上の歯車マークを押して、オプション)を開きます。
20130227_05

設定 – 地域を開き、[設定した言語に一致するように既定フォルダーの名前を変更する]のチェックボックスを入れます。
20130227_06

再度OWAにアクセスすると、通常の受信トレイ、送信済みアイテムなどの名前に修正されます。
20130227_07

なお、この作業を行う確率を減らしたいだとか、そもそも全ユーザーに初回ブラウザからアクセスさせて言語とタイムゾーンを選択させるのが面倒だということであれば、メールボックス作成作業に合わせてPowerShellで言語の設定を行うことも可能です。コマンドはSet-MailboxRegionalConfigurationです。例えば、以下の様に使います。

新しく追加したuser01の言語の設定を行う

Set-MailboxRegionalConfiguration -Identity user01 -DateFormat "yyyy/MM/dd" -Language "ja-JP" -TimeFormat "H:mm" -TimeZone "Tokyo Standard Time"

全メールボックスの言語の設定を行う

Get-mailbox | Set-MailboxRegionalConfiguration -DateFormat "yyyy/MM/dd" -Language "ja-JP" -TimeFormat "H:mm" -TimeZone "Tokyo Standard Time"

また、予定表のタイムゾーンを変更する場合は以下の様にします。

Set-MailboxCalendarConfiguration -Identity user01 -WorkingHoursTimeZone "Tokyo Standard Time" -WorkingHoursStartTime 09:00

勿論、管理者のコントロールパネルから「他人の管理」で他のユーザーの設定画面に入って設定を行うことも可能ですが、まとめて効率的にやろうとするとPowerShellでやる形になります。PowerShellは、テナントの管理者の方は今後もおそらく触る機会が多くなるかと思います。少し敷居が高く感じられるかとは思いますが、是非触れるようにされておくことをお勧めします。