Office365 サインイン画面の「アカウントを選択する」とか「Windows接続済み」とかの件

ブラウザは、InternetExplore(IE)or Microsoft Edge で、OSは Windows10 を前提としたお話です。

ブラウザを利用してOffice365にサインインしたことがあるアカウントはOffice365のサインイン画面(https://login.microsoftonline.com)に、表示されるようになっており、選択するだけでパスワード入力画面に進めるようになっています。大変便利なのですが、少々気持ち悪いし、キャッシュをクリアしても消えません。どうなっているか、調べたところ、アカウントの状態が2種類あるようでした。

1.利用するブラウザで、Office365に1度でもサインインしたことがあるアカウント
2.OSの領域に登録されているアカウント

2つとも、アカウント選択画面に表示されますが、「1」は表示された画面の「:」から「破棄」することができるので、直ぐに消せます。
「2」のアカウントは「Windows接続済み」と表示され、ブラウザの画面からは削除できません。ではどうすればよいか、と言うと、以下の手順で削除できます。

1.Windowsのスタートアップから「設定」を起動
2.メニューから「アカウント」を選択
3.左メニューの「職場または学校にアクセスする」を選択
4.該当アカウントを選択し、「切断」

これでOffice365のサインイン画面からアカウントが無くなっているのが確認できると思います。

では、「Windowsに接続済み」と表示されるアカウントはどうやって作られるか?ということですが、これも確認したところでは2通りの方法があるようです。1つは先ほどの「職場または学校にアクセスする」からアカウントを登録(+接続)した場合です。これは意図して行うので分かりやすいですね。2つ目は、WordやExcelなどでサインインを行いますが、こちらでサインインを行い、↓の画面に「はい」とした場合です。

完了画面に「アカウントが追加されました」と表示されるのは、この事だったのですね。

—2021年4月追記—
こちらの記事も参考に
【Japan Azure Identity Support Blog】
https://jpazureid.github.io/blog/azure-active-directory/WorkPlaceJoin/

この操作が完了すると「Azure Active Directory」の「デバイス」に端末の情報が登録されます。恐らくここに登録されたデバイスなら「Edgeブラウザ」から認証無しにOffice365を利用できるのでは?と思っていますが、後日、調査してみようと思います。

こちらの記事(Office365「Windows接続済み」で自動ログインする件)も参考になれば。(2020年3月追加)

まーOffice365はEnterprise向けと言っていますが、機能がありすぎて使いこなせないし、いろいろブラックボックスで分かり難いし、ネイティブアプリは認証情報をOSの資格情報に格納するし、OSと密接に連携しているし複雑ですわー。(複雑な分、SIとかコンサルビジネスにはなるのですが。。。)

Office365:フェデレーション環境に新にサブドメインを追加する方法

Office 365 は、ルート ドメイン (例 : contoso.com) を登録し、所有権確認後に、サブ ドメイン (例 : sub.contoso.com) を登録すると、ドメイン同士の親子関係が自動的に成立してしまいます。※サブドメインじゃなくて、全く別のドメイン(例:test.comなど)なら親子関係はありません。

親子関係のあるドメインについては、親ドメインの設定 (認証、承認、フェデレーション) が子ドメインに継承されるため、親ドメインをフェデレーション状態の場合、子ドメインもフェデレーション ドメインに自動的になってしまいます。

また、サブ ドメインを Office 365 へ登録する前にルート ドメインをフェデレーション変換している場合、Office 365 管理センター(Office365の管理画面)上からのサブ ドメインの追加はできないので、注意が必要です。

で、どうしたら良いのか?というと、PowerShellからサブドメインを追加できます。

■実行コマンド
Office365に接続後に、以下のコマンドを実行。
New-MsolDomain -Name “登録するサブ ドメイン名” -Authentication Federated​

 

PowerShellを使ってOffice365を操作する

過去に、Office365をPowerShellで操作するための環境を整える方法を投稿していますが、最近はちょっとだけ便利になってきている(?)ような気がするので、自分の為にまとめておきたいと思います。

最近のWindows10にはPowerShellの統合開発環境「Windows PowerShell ISE」(Windows PowerShell Integrated Scripting Environmentnt)というツールが入っており、大変使いやすくなっています。

■起動方法
・「スタート」(Windowsアイコン)から「Windows PowerShell」-「Windows PowerShell ISE」を起動。

今回、Office365をPowerShellから操作したいので、デフォルトではコマンドが足りません。別途インストールする必要があります。とは言っても、コマンド叩くだけなのでとても簡単です。

■AzureAD関連、Office365関連のモジュールをインストールする。
1.「Windows PoserShell ISE」を右クリック、「管理者として実行」
2.「Install-Module -Name AzureAD」コマンド実行
3.「Install-Module MSOnline」コマンド実行
・NuGet プロバイダーをインストールするようメッセージが表示されたら「Y」と入力しENTER を押します。
・If prompted to install the module from PSGallery, type Y and press ENTER.PSGallery からモジュールを
インストールするようにメッセージが表示されたら、「Y」と入力し、ENTER を押します。

マイクロソフト社のWebサイトにも詳しい情報が掲載されているので、参考にしてみては。

【Office365 PowerShellへの接続】
https://docs.microsoft.com/ja-jp/office365/enterprise/powershell/connect-to-office-365-powershell

事前準備として“Microsoft Online Services サインイン アシスタントの 64 ビット バージョンをインストールします。”とありますが、インストールした覚えがない・・・もしかしたら過去に導入した可能性があるので、クリーンな環境から始める場合には、「Install-Module -Name AzureAD」コマンドを実行する前に、サインインアシスタントをインストールしてみてください。

【マイクロソフトダウンロードセンター】
IT プロフェッショナル 用 Microsoft Online Services サインイン アシスタント RTW
https://www.microsoft.com/ja-jp/download/details.aspx?id=41950

 

2020年4月追記

「Get-OrganizationConfig」コマンドを利用したかったのですが、標準ではコマンドが無いようなので、以下の手順で追加しました。

1.Set-ExecutionPolicy RemoteSigned

2.$Cred = Get-Credential

3.$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell -Credential $Cred -Authentication Basic -AllowRedirection

4.Import-PSSession $Session

◆ Exchange Online の先進認証について
【先進認証の設定状況を確認するコマンド】

Get-OrganizationConfig | fl OAuth2ClientProfileEnabled

<実行結果例>
OAuth2ClientProfileEnabled : False

【先進認証を有効にする】
Set-OrganizationConfig -OAuth2ClientProfileEnabled $true

【先進認証を無効にする】
Set-OrganizationConfig -OAuth2ClientProfileEnabled $false

 

Office365 Outlookで何度も認証を求められる現象について

どうやら特定のバージョンで発生する「既知の問題」だそうです。マイクロソフト社より、パッチも出ているようです。この現象に遭遇しているユーザさん、多いみたいなので共有しておきます。

—————————————————————————————————————————————
Windows 10 バージョン1703 以降で、Office 2016 ( 月次チャンネル 16.0.7967 以降 ) を使用すると、OfficeはWebアカウントマネージャ(WAM)機能を利用します。

上記バージョン以上の組み合わせの利用を開始してから、Outlookにて何度も認証を求められるようになった場合、WAM機能が原因となっている可能性が高いとしてレジストリでのWAM機能を無効化する方法にて現象が回避できたという情報があります。

WAM機能には既知の問題があり、Windows10 バージョン 1703 につきましては2018年4月17日(US 時 間) に修正プログラムをリースしております。

■情報
April 17, 2018—KB4093117 (OS Build 15063.1058)
URL:https://support.microsoft.com/en-us/help/4093117/windows-10-update-kb4093117

■パッチダウンロード
http://www.catalog.update.microsoft.com/Search.aspx?q=KB4093117
(2020年5月追記:パッチ提供は終了。通常のOffice Updateの中に含まれているようです。)

■修正プログラムの適用が難しい場合、レジストリ操作でOfficeのみWAM機能を無効化
レジストリ : HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Common\Identity\
種類:REGDword
名前:DisableADALatopWAMOverride
値:1

■DisableADALatopWAMOverride を設定する影響について
【レジストリの影響】
Office 製品で WAM を使用しないという従来のADAL での認証動作に戻すためのレジストリとなります。そのため、Office 製品以外がこのレジストリ設定の影響を受けるとはありません。

【WAM について について】
Webアカウントマネージャー(WAM)は、新しい認証フレームワークのことです。
Windows10バージョン1703以降で、Office 2016(月次チャンネル 16.0.7967以降) を使用する場合、既定ではWindowsOSのWAM機能を利用して認証行います。

上記バージョンの組み合わせではない環境においてはWAM機能は有効化されていないため、従来のADALでの認証となります。
—————————————————————————————————————————————

Cloud Access Security Broker (CASB) が話題

Cloud Access Security Broker (CASB)という言葉を最近よく耳にします。

それは何か?と調べてみると・・・

  1. 企業が使っているクラウドサービスを特定、格付けして変なサービス使ってないか、分析する。
  2. 使ってOKのサービスを対象にデータ共有、損失防止の管理をする。
  3. ユーザの行動分析と異常を検知して脅威から保護する。

という事らしいが、「2」番目は、クラウドストレージとかに機密情報ファイルをアップしていないか?権限は適切か?などをチェックするということで、その他は簡単に申し込めるクラウドサービスが多いので、変なものを利用していないかチェックする、という事なんだと思います。

※「2」番目の件に関しては、Googleのストレージに保存されたファイルの監視機能やAPIを提供しているので、この辺りの機能を指しているものと思います。

【Google Cloud Platform データ漏洩の防止】

https://cloud.google.com/security/data-loss-prevention/preventing-data-exfiltration?hl=ja

 

で、CASBが注目される背景を自分の人生に照らし合わせてみると・・・

  • プロジェクト内で便利なサービスがあるよ!ってことで、特段気にせず「cybozu live」を使ってたけど、スケジュール表とか仕様書とか共有してたなー。でも2019年4月15日で終了するようで、ファイルとか削除しなきゃー、でもログインIDも忘れちゃったよー、大丈夫かなー。
  • タスク管理に便利だからって「Trello」使ってますよー、無料だしー、でも案件の名前とか入れちゃってるよねー。
  • Webサイトの分析したいので、「SimilarWeb」に登録してみましたよー、無料だしー。
  • お客さんがBoxでファイル共有するから、無料アカウント作ったよー、でちょっと使ってみよー、意外に便利だねー。

という感じで、クラウドサービスをガンガン使っちゃってます。

多分、このようないわゆる「ジャドーIT」を見つけ出して、しっかり管理しないと駄目ですよ、という状況になってきたのでCASBみたいなものが必要になってきたのだと思います。

 

という事で、実際にちょっとだけ触ってみました。マイクロソフト社の「Cloud App Security」の評価版を申し込んでみましたが、ここでもアカウントを勝手に作って登録しちゃいましたw

内容としては「Cloud App Security」には、いろんなサービスを格付けしたDBを持っており、通信ログなんかを読み込んで、分析すると、危ないサービス利用してますね!というのが分かる感じです。ポリシーに違反しているログがあると警告を出したりすることも、もちろんできます。(多分、NW機器やFirewallなどと連携して、API経由でネットワークから遮断することもできると思います。)

■Cloud App Securityに登録されているクラウドサービスカタログ。スコアが記載されていて、自分のサービス(マイクロソフト社)のスコアはほどんど「10」(最高に安全)ですね!

 

■クラウドサービスをクリックすると、詳細な情報が見られます。以下はOffice365です。

■G Suiteは・・・スコア「9」ですか・・・赤い×マークがちらほら。

 

で、分析するログデータ(データソース)は自動的に取り込むこともできますし、手動でアップロードすることもできます。メジャーなNW機器のログファイルであれば事前に定義されているので、種類を選択して、ファイルをアップするだけで良いです。

 

■データソース取り込み画面。「Check Point」とか「Cisco」とか、結構あります。

 

 

■事前定義されていないファイルはカスタムログで取り込み可能。

 

■ログを取り込み、分析させると、素晴らしいレポートができます!

■ポリシーに引っかかるような通信はシャットアウトできますが、そのポリシーもいくつか事前に定義済みです。

 

という感じのサービスでしたが、ぜんぜん本格的に利用していないので、詳しいことはわかりません。ただ、規模が大きい会社ですと、必要になるものなんだろうと感じました。

見ていただいたようにCASBも単体で完結するサービスではなくて、NW機器やセキュリティサービスと連携して初めて可視化できるものなので、その意味でも比較的規模感のある企業向けのものかな、と思います。

CASBを調べていて、ふと思ったのですが、ログインIDとして「Facebook」や「Twitter」を利用できる(OpenID Connect)クラウドサービスが増えていますけど、認証シーケンス内で、属性情報を渡す同意をしてはいるものの、渡した情報って最終的に消してもらえるんですかね?って心配になります。

いや、消されないでしょう。サービスの作りによりますが「Facebook」から渡された情報を自分のID(自動発行)と紐づけして、DBに格納すると思いますが、例えばユーザが「Facebook」のアカウントを削除しても、渡されたサービス側は「Facebook」アカウントが削除されたことは分かりませんからね。実際、案件でも”そうなったら、ごみデータ”になっちゃうね、って話してますw

こういう「Cloud ID Management」サービスがあったら良いですね。具体的な実装のアイデアあるので誰か作ってください!