3流プログラマのメモ書き

元開発職→社内SE→派遣で営業支援の三流プログラマのIT技術メモ書き。 このメモが忘れっぽい自分とググってきた技術者の役に立ってくれれば幸いです。(jehupc.exblog.jpから移転中)

(Windows)共有フォルダにアクセス時に表示される認証ダイアログ情報の保存先

Windowsで共有フォルダにアクセスすると認証ダイアログボックスが表示されることがあります。(サーバ側のGuestアカウントが無効になってること前提です。ここら辺の詳しい話は(XP)「簡易ファイルの共有」機能にやられたを参照。)

この時、「パスワードを記憶する」にチェックすると入力した資格情報が正しければその情報が保存されます。

そして、次回接続時にはその保存した資格情報でアクセスを試みます。

この保存された情報は確認が可能なようです。(パスワードは見えないようになってますが。。)

ファイル名を指定して実行で、「control USERPASSWORDS2」を実行し、「詳細設定」タブから「パスワードの管理」押下すると保存してる情報を確認できるようです。

WindowsXPの場合「ユーザ名およびパスワード保存」というところに入る

Windows7の場合は、「資格情報マネージャー」が開く

ドメイン環境の場合は、コントロールパネル→「ユーザアカウント」→「詳細設定」タブ→「パスワードの管理」からでもいけます。

ワークグループ環境の場合は、コントロールパネル→「ユーザアカウント」→ログインユーザ名を選択→左ペインの「関連した作業」の「ネットワークパスワードを管理する」から表示できるようです。

今回とあるユーザからグループウェアに載せてたある共有フォルダにアクセスできないとの問い合わせがありました。

仮に file://testserver/folder1 というリンクから共有フォルダにアクセスしようとしてたとします。

この folder1 にはそのユーザのドメインアカウントのみアクセスを許可しています。(domain\useraにアクセス許可)

原因を探してると、以前に同じサーバ上の別の共有フォルダにアクセスする際に、別のアカウントでしかアクセス許可がなかったため、認証ダイアログでその別アカウントのユーザ名とパスワード保存してたようです。

例えば file://testserver/folder2 が domain\userb にしかアクセス許可がなかったため、その情報を保存してたという感じです。

この場合、リンク先の file://testserver/folder1 にアクセスする際にログインしてるユーザ(domain\usera)ではなくて、domain\userb でアクセスを試みるため、はじかれたようですね。

ちなみに、ログイン直後でエクスプローラから \\testserver でアクセスし、該当フォルダを開くときには認証ダイアログが出てきます。(ユーザ名には userb が表示されますが。。)

「ユーザ名およびパスワード保存」では、サーバ毎の資格情報の保存しかできません。よって、同じサーバで共有フォルダのアクセス許可が異なる場合で、ユーザ名・パスワード保存すると、今回のようにアクセスできないという事態になるようですね。

後一つ気に食わないのは、ログイン直後 file:// でアクセスしたときには「アクセスできません」って警告じゃなくて、再度認証ダイアログを表示するようにしてほかったですね。

この資格情報の保存のタイミングについては、MSサポート:[ユーザー名およびパスワードの保存] の動作に詳しく載せられてました。