Note
本記事は Technet Blog の更新停止に伴い https://blogs.technet.microsoft.com/jpazureid/2017/10/24/%e8%aa%bf%e6%9f%bb%e3%81%ab%e6%9c%89%e5%8a%b9%e3%81%aa%e6%8e%a1%e5%8f%96%e6%83%85%e5%a0%b1-%e3%83%96%e3%83%a9%e3%82%a6%e3%82%b6%e7%b5%8c%e7%94%b1%e3%81%a7%e3%81%ae-azure-ad-%e8%aa%8d%e8%a8%bc/ の内容を移行したものです。
元の記事の最新の更新情報については、本内容をご参照ください。
こんにちは、Azure & Identity サポート チームの後藤です。
サポートに問い合わせる前に取得しておくと、その後の調査がスムーズに進む可能性がある資料をご紹介します。
今回はブラウザー経由でのアクセス時に Azure AD における認証の問題が疑われるシナリオの場合です。
具体的なシナリオとしては次のような例です。
- Azure AD と連携する Box などのサードパーティーの SaaS アプリで SSO をしようとしたがうまく動作しない。
- Azure ポータルで設定作業をしたが、雲のマークが出て設定画面がロードされない。
- Office 365 にサインインしようとしたが、エラーが出力されサインインできない。
- 上記のようなシナリオで有効な採取情報、その採取手順をご紹介します。あわせて Azure AD に関する問題全般 でご紹介しました情報の採取も実施ください (PSR 情報は重複していますが、認証に関わる問題の際には本ブログの手順で採取します)。
<採取情報>
(a) 問題ステップ記録 (PSR) ツール情報
問題ステップ記録 (以降、PSR) は、クリックした場所の説明や、表示される画面のスクリーン ショット、その日時などを自動的にキャプチャするツールです。
PSR 情報から得られた各オペレーションの実行日時を元に Fiddler トレース、ネットワーク パケットの情報を解析します。
(b) Fiddler トレース
Fiddler トレースは、該当端末の HTTP(S) 通信の確認を目的としています。
PSR 情報、ネットワーク パケットと合わせて同じタイミングで取得ください。
(c) ネットワーク パケット
ネットワーク パケットは、通信の相手先や HTTP (S) の確立、 TCP レベルの解析を目的としています。
PSR 情報、 Fiddler トレースと合わせて同じタイミングで取得ください。
<取得手順目次>
端末に Fiddler をインストールします
PSR 情報、Fiddler トレースの記録及びネットワーク キャプチャの記録を開始します
事象の発生を確認します
PSR 情報、Fiddler トレースの記録及びネットワーク キャプチャの記録を停止します
<取得手順詳細>
端末に Fiddler をインストールします
以下の手順で、クライアント端末に Fiddler をインストールします。
各種情報採取が終了しましたら、アンインストールしても問題ありません。
- Fiddler のインストール手順
以下の Web サイトより、「Fiddler for Windows」をダウンロードします。
http://www.telerik.com/download/fiddler
ダウンロードしたインストーラーをダブルクリックし、インストールします。
Fiddler は .NET Framework 2.0 SP1 以上を必要とします。.NET Framework が検出できない場合には、インストール完了後、ポップアップが表示されますので、 .NET Framework をインストールします。
.NET Framework ダウンロード
http://msdn.microsoft.com/ja-jp/netframework/aa569263.aspx
PSR 情報、Fiddler トレースの記録及びネットワーク キャプチャの記録を開始します
不要な情報の採取を避けるために、全てのウィンドウを閉じます。
以下の手順で PSR を起動します。
2-1. スタート メニューの [ファイル名を指定して実行] にて psr.exe と入力し、[OK] をクリックします。
2-2. “問題ステップ記録ツール” が起動しましたら、右端の ▼ をクリックし、表示されるメニューから [設定]をクリックします。
2-3. “保存する最新の取り込み画像数” を 25 から 100 に変更し、OK をクリックします。
以下の手順で Fiddler を起動します。
3-1. Fiddler2 を “管理者として実行” します。
3-2. [File] - [Capture Traffic] のチェックを外します。
3-3. [Tools] - [Telerik Fiddler Options] を選択し、[HTTPS] タブに移動します。
3-4. [Capture HTTPS CONNECTs] および [Decrypt HTTPS traffic] のチェック ボックスをオンにします。
3-5. WARNING が表示されましたら、 [YES] をクリックします。更に、セキュリティ警告が表示されましたら、 [はい] をクリックします。
これにより、個人ストア、および信頼されたルート証明機関ストアに発行者が “DO_NOT_TRUST_FiddlerRoot” である証明書が追加されます。
3-6. [OK] をクリックし、Fiddler Options を閉じます。
3-7. 左側の画面で Ctrl+A を押下し、すべてを選択した状態で Del キーを押下し、現在記録されている情報を削除します。
以下の手順で Fiddler トレースの記録を開始します。
4-1. Fiddler の画面を前面に出します。
4-2. [File] - [Capture Traffic] のチェックをつけます。
4-3. Fiddler の画面を最小化します。
以下の手順でネットワーク キャプチャの記録を開始します。
5-1. 管理者権限を持つアカウントでコマンド プロンプトを開きます (UAC が有効の場合には、”管理者として実行” します)。
5-2. 次のコマンドを実行し、ネットワーク キャプチャの記録を開始します。
netsh trace start capture=yes
5-3. 以下 4 つのコマンドを実行してキャッシュ情報を削除します。
ipconfig /flushdns
nbtstat -R
klist purge
klist purge -li 0x3e7
klist purge -li 0x3e4
以下の手順で PSR 情報の記録を開始します。
6-1. “問題ステップ記録ツール” の画面を前面に出します。
6-2. [記録の開始] をクリックします。
6-3. “問題ステップ記録ツール” の画面を最小化します。
※ 目的の画面が隠れないように、必ず最小化します。
事象の発生を確認します
※ Azure ポータルや Office ポータルなどで操作する場合には言語設定を英語にしておくことを推奨します。
ここで取得する情報をグローバルの開発担当エンジニアやデータセンターエンジニアが確認する可能性があるためです。
PSR 情報、Fiddler トレースの記録及びネットワーク キャプチャの記録を停止します
以下の手順で PSR 情報の記録を停止して採取します。
1-1. “問題ステップ記録ツール” の画面を前面に出します。
1-2. [記録の停止] をクリックします。
1-3. ファイルの保存場所、ファイル名を指定し、保存します。
以下の手順で Fiddler トレースの記録を停止して採取します。
2-1. Fiddler の画面を前面に出します。
2-2. [File] - [Capture Traffic] のチェックを外します。
2-3. [File] - [Save] - [All Sessions] を選択し、.saz 形式でログを保存します。
以下の手順でネットワーク キャプチャの記録を停止して採取します。
3-1. 管理者権限を持つアカウントでコマンド プロンプトを開きます (UAC が有効の場合には、”管理者として実行” します)。
3-2. 次のコマンドを実行し、ネットワーク キャプチャの記録を停止します。
netsh trace stop
3-3. トレース ファイルの収集処理が完了しましたら “ファイルの場所” として表示されている NetTrace.etl ファイル、及び同じフォルダー内の NetTrace.cab の 2 つのファイルを別の場所に保存します。
1-3、 2-3、 3-3 の手順で保存したファイルが取得情報になります。
Fiddler が不要な場合はアンインストールします
コントロール パネルから [プログラムと機能] を選択します。
“Telerik Fiddler” をダブル クリックし、”Uninstall” ボタンをクリックします。
C:\Program Files 配下にある Fiddler2 フォルダーを削除します。
[スタート] - [ファイル名を指定して実行] より certmgr.msc と入力し、Enter キーを押下します。
証明書管理スナップインの左ペインから、[個人] - [証明書] を展開し、右ペインから発行者が “DO_NOT_TRUST_FiddlerRoot” となっている全ての証明書に関して、証明書を右クリックし、”削除” を選択し、証明書を削除します。
証明書管理スナップインの左ペインから、[信頼されたルート証明機関] - [証明書] を展開し、右ペインから発行者が “DO_NOT_TRUST_FiddlerRoot” となっている全ての証明書に関して、証明書を右クリックし、”削除” を選択し、証明書を削除します。
注意:
Fiddler トレースで認証時の HTTP(S) 通信のログを取得する場合には、認証時のユーザー及びパスワード情報が含まれるのでご留意ください。
しかしながら、調査にあたり必ずこの情報が必要になることが多く、ご取得いただくことはおすすめです。
サポートにご提供いただいた情報は、責任をもって管理し、調査終了後は削除しますのでご安心ください。
ここでご案内しました情報を事前に取得し、お問い合わせと合わせてご提供いただくことで次のようなメリットがあります。
お問い合わせに対する回答・問題解決をより早くできます。
後々、再現できなくなり、問題発生時の情報がないために、問題の発生要因を追及できなくなるケースを減らせます。
ご提供いただいた情報を元にサポート エンジニアが初期調査を実施したうえでお客様とゴール設定ができます。
以上、 ブラウザー経由での Azure AD 認証に関わる問題で必要になる可能性がある資料の紹介でした。
※本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。