「username@mydomain.com:something」としてログインする意味は何ですか


35

Windows 2008 R2マシンがドメインに参加しています。

ログオン画面で、ユーザー名として「username@mydomain.com:something」と入力しても、引き続き適切にログオンできます。最後に「:something」が追加された意味は何ですか?

ユーザー切り替え画面に現在のユーザーが「username@mydomain.com:something」として表示されていることも確認できます。Windowsの機能ですか?それとも単なるバグですか?機能の場合、「username@mydomain.com」としてログインすることと「username@mydomain.com:something」としてログインすることの違いは何ですか?

「mydomain \ username:something」や「mydomain.com:something\username」など、さまざまな組み合わせを試しました。「username@mydomain.com:something」以外は機能しません。

2012年9月10日更新

ジャスティンが提起したRunAsの問題は似ていますが、解決したい問題とまったく同じではありません。もしあなたがそうするなら

runas /user:username@mydomain.com:anything

あなたは得るでしょう

RUNAS ERROR: Unable to acquire user password

RunAsがusername@mydomain.com:anythingユーザー名と見なすときにLSAを呼び出すことすらしないことを確認しました。RunAsは入力の検証を行い、そこでエラーを返します。

WinLogonは異なります。この形式の入力を受け入れ、「username@mydomain.com:anything」をLSAに渡します。私は見ていますLogonUserEx2内側kerberos.dllが呼ばれました。WinLogonの入力検証ロジックにバグがあるか、いくつかの隠された機能で実際に受け入れられる形式です。

2012年9月26日更新

マイクロソフトプレミアサポートにケースを送信しました。それらから更新があれば、ここで更新します。


5
それは興味深い。
シェーンマッデン

「:something」を「:anything」にできますか?Windowsのように、ポート番号または拡張機能として処理するようです。非常に奇妙です。
ブレントパブスト

2
クレイジー。これをテストしたところ、domain.tld:anythingのUPNサフィックスを作成し、このUPNでドメインにログオンすることが可能です。
-joeqwerty

1
私がやる場合はrunas /user:"jdearing@domain.com:something" "cmd /C dir c:\ & pause"それを返しRUNASエラー:取得するユーザーのパスワードにできません。通常のとは対照的に、1326:ログオン失敗:不明なユーザー名またはパスワードが間違っています。ログイン失敗。
ジャスティンディアリング

2
参考情報:TechNetフォーラムにも投稿されていますが、Windowsチームがそこに表示するかどうかはわかりません:bit.ly/UF94GQ
ブレントパブスト

回答:


13

Microsoft Premier Supportでケースを開きました。これが私とマイクロソフトのサポートの間のメールです。彼らは基本的にそれは既知の問題だと言っています。これはバグではなく、機能でもありません。

バックエンドはユーザー名を解析し、不正な文字を適切に取り除きます。他のサードパーティログオンUIがある可能性があるため、フロントエンドはUI検証を行いません。ユーザー名に対する要件は異なる場合があります。彼らが言及しているのは、サードパーティの資格情報プロバイダーだと思います。

2012年10月5日の朝

私は彼らのエンジニアの一人と電話をかけました。彼にもう一度問題全体を説明してください。彼は:something今日の時点で内部的に特別な意味を持たないことはかなり確信していますが、将来それが何かを意味することを保証することはできません。

しかし、彼はそれを確認するためのソースコードを持っていません。彼はそれを確認するために、ソースコードとともに他の誰かにメールを送ります。

2012年10月3日の夜-返信

情報をありがとう。ただし、他のいくつかの違法な文字を試してみました; および|。

ログオンUIはそれを正常に検出し、ユーザー名またはパスワードが正しくないことを教えてくれます。

フロントエンドが実際に入力検証を行わず、バックエンドが不正な文字をすべて削除できる場合、ログオンUIでHarvey@company.com|somethingまたはHarvey@company.comとしてログインできないのはなぜですか。 Harvey@company.com:something以外の何か。

この奇妙な動作は「:」でのみ発生します。

-ハーベイ

2012年10月3日午後-MSサポートの返信

こんにちはハーベイ、

フロントエンドは検証を実行しないため、フロントエンドの検証にバグはありません。資格情報を入力してログインしようとすると検証が実行され、バックグラウンドで検証が実行され、それぞれのエラーが表示されます。

前に検証を実行しなかった理由は、使用されている他のサードパーティログオンUIOがあり、ユーザーの作業と認証の要件が異なる可能性があるためです。UIによっては、diff形式のユーザー名が必要な場合があります。そのため、ユーザーが資格情報を入力しているときに検証を実行すると、これらのUIが破損します。

バックエンドに関しては、フロントエンドに存在するUIに関係なく、すべてのUIがバックエンド認証APIを呼び出します。したがって、バックエンドで検証を実行すると、適切な認証が保証されます

よろしくXXXX

2012年10月3日午後-返信

私はプログラマでもあるので、フロントエンドとバックエンドの異なる処理の説明を理解しています。

そのため、バックエンドにはバグはありませんが、フロントエンドUI入力検証ロジックの小さなバグのように聞こえます。

また、runas.exeを使用して同じことをしようとしたことに注意してください。runas.exeは、不正な形式のユーザー名をバックエンドに渡す前にエラーメッセージを表示しました。したがって、私にとって、runas.exeは正しい入力検証を行っています。

それでもUIフロントエンドにバグがないと思われる場合は、エンドユーザーが不正なユーザー名を入力して画面に表示できるようにする目的を説明してください。

ありがとう、ハーヴェイ

2012年10月3日午前-MSサポートの返信

こんにちはハーベイ、

遅れて申し訳ありません。私はあなたの質問を私のSMEに転送しました。ここに彼の返事があります:バグはありません。UIは入力した内容を表示します。バックエンドは文字列を解析して、ドメインとユーザー名を決定します。:は不正な文字であるため、適切に処理されます。

それがあなたの質問を明確にするか、私があなたをさらに支援できるかどうか私に知らせてください。

XXXXXよろしく


3
卓越した努力と答え。私はこれを与えるために賛成票を1つだけ持っていることを後悔しています。(そして、FWIW、あなたは私を他の「違法」キャラクターでこれをテストするように促しました。)
HopelessN00b

ベンダーと取引して、このような回避的な一連の回答を得ると、それが大好きです。特にrunasの動作との比較と、特定の「違法なキャラクター」だけが削除されるという明らかな矛盾(そして、明らかにそれ以降もすべて)が大好きです。少なくとも0.002c!= $ 0.002であると納得させる必要はありませんでした:
ジョンクロスケ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.