問題タブ [winqual]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - WinQual:WERがコード署名証明書を受け入れないのはなぜですか?
2015年1月24日現在の編集:現在、他の信頼できる認証局を使用することはできません。質問と回答は時代遅れではありません:
WinQualは引き続き署名を拒否します。
有効なデジタル署名であることをすでに確認している場合:
完全を期すために、他の誰かが行った編集を以下に残します。彼がどれほど間違っていたかを指摘するだけです。そして彼はその恥をもって生きることができます:
2014年現在の編集:他の信頼できる認証局を使用できるようになりました。質問と回答は廃止されました。
2005年に、MicrosoftでWinQualアカウントを確立しようとしたので、Windowsエラー報告(WER)を介して自動的に送信されたクラッシュダンプファイル(存在する場合)を取得できました。Verisign証明書を持っていないため、クラッシュダンプを取得できませんでした。代わりに、Verisignの子会社であるThawteによって生成された安価なものがあります。
参加する方法は次のとおりです。提供されているサンプルexeにデジタル署名します。これは、あなたが実際にクラッシュダンプを取得したアプリに署名したのと同じ署名者であることを証明しています。
暗号的には、実行可能ファイルにデジタル署名を生成するために秘密鍵が必要です。その秘密鍵の所有者のみが、一致する公開鍵の署名を作成できます。誰がその秘密鍵を生成したかは関係ありません。これには、以下から生成される証明書が含まれます。
- 自己署名
- ウェルズ・ファーゴ
- DigiCert
- SecureTrust
- トラストウェア
- QuoVadis
- GoDaddy
- 委託する
- サイバートラスト
- ジオトラスト
- GlobalSign
- コモド
- Thawte
- ベリサイン
ただし、MicrosofのWinQualは、Verisignによって生成されたデジタル証明書のみを受け入れます。Verisignの子会社でさえ十分ではありません(Thawte)。
マイクロソフトがコード署名証明書を受け入れたくないという技術的、法的、または倫理的な理由を誰かが考えることができますか?WinQualサイトによると:
Winqualメンバーシップにデジタル証明書が必要なのはなぜですか?
デジタル証明書は、スタッフのメンバーになりすましたり、会社に対して詐欺行為を行ったりする個人から会社を保護するのに役立ちます。デジタル証明書を使用すると、ユーザーまたは組織のIDを証明できます。
どういうわけか、Thawteデジタル証明書は安全ではありませんか?
2年後、クラッシュダンプを取得できるようになるのを待っているというリマインダー通知をWinQualに送信しました。WinQualチームからの回答は次のとおりです。
こんにちは、
念押し有難う。これはまだリクエストであると適切な人に通知しました。
2008年に、マイクロソフトのサポートフォーラムでこの質問をしましたが、回答は次のとおりです。
現時点では、VeriSign証明書のみを受け入れるように設定されています。他の種類の証明書をサポートするという圧倒的な要求はありませんでした。
他の種類の証明書を受け入れるための「セットアップ」ではないということは、おそらくどういう意味ですか?
WinQual.exeテストアプリに署名したキーのフィンガープリントが、実際に取得したクラッシュダンプである実行可能ファイルに署名したフィンガープリントと同じである場合、それは証明されています-それらは私のクラッシュダンプです。それらを私に渡してください。
また、他のすべてのデジタル署名とは対照的に、Verisignデジタル署名が有効かどうかを確認するための特別なAPIがあるわけではありません。有効な署名は、誰がキーを生成したかに関係なく有効です。
Microsoftは署名者を信頼しないことは自由ですが、それはIDと同じではありません。
それが私の質問です。WinQualがデジタル署名をサポートするように設定されていない実際的な理由を誰かが考えることができますか?
ある人は、答えは彼らがただ怠惰であるということであると理論づけました:
私は知りませんが、winQualシステムを実行しているチームはライブチームであり、開発チームではないと思います。たとえば、既存のシステムのメンテナンスに向けた個性とスキルセットです。私は間違っているかもしれません。
彼らはそれを変えるために仕事をしたくありません。しかし、誰かが変更する必要がある何かを考えることができますか?キーを生成したものに関係なく、同じロジックです。「指紋が一致しますか」。
私は何が欠けていますか?
アップデート
他の開発者の話を聞くのはいいことです。このようにして、私は自分が一人ではないことを知っています。この質問は、マイクロソフト側の変化の手段として役立つ可能性があります。そして、私の当初の意図が不平を言う暴言であったとしても、これを有効なStackOverflowの質問に保つために、 MicrosoftがVerisign証明書しか受け入れられなかった技術的な理由を探しています。
暗号化APIは、証明書を発行した会社の名前を気にしません。署名者のチェーンが信頼できるルートに戻ることだけを気にします。
Microsoftが特に確立された暗号インフラストラクチャを使用しておらず、代わりにVerisignに限定されている場合、何が起こっている可能性がありますか?
プログラムマネージャーや開発者が理由を説明しているブログエントリを誰かが指摘できれば、おそらく満足するでしょう。
アップデート2
人々は私の質問の要点を見逃しているようです。Windowsには、デジタル署名証明書がルート機関によって信頼されていることを確認するためのコードインフラストラクチャがすでに備わっています。これは、署名された実行可能ファイルの1つにあるデジタル署名のスクリーンショットです。
私たちの証明書がThawteのコード署名局の証明書によって署名されていることがわかります。この証明書はThawteによって署名されています。
また、「thawte」証明書はデフォルトでWindowsに付属しています。
Thawte Premium Server CAは、WindowsとInternetExplorerのすべてのコピーがすでにそれを信頼しているほど十分に優れています。また、証明書が有効(つまり信頼できる)かどうかを確認するための確立されたAPIがすでにあります。
WinQualの人たちがやって来たとき、彼らは正しい方法をチェックすることを避けるために邪魔をしなければならなかったでしょう、そして代わりに彼ら自身の解決策を転がし、信頼できるルートとしてVerisignだけをハードコーディングしました。なぜ彼らは他の信頼できるルート機関、コードが実行されているWindowsマシンで出荷される機関を無視し、代わりにVerisignをハードコーディングするのでしょうか。
他のすべての人(Windows Explorer、Firefox、Chrome、Internet Explorer、Opera、CertMgrなど)のように行うのではなく、特にVerisignのみを許可します。そして私の質問はその理由です。
Why would WER not accept code-signing certificates?
単純な場合:
- 最初にそれを書いた人は彼の頭のてっぺんから適切な方法を知らなかったので
- 適切な方法を調査するために多くの時間を費やすのではなく
- 彼はただ一緒に何かを投げました
- テストのために、彼は1人の署名者だけをハードコーディングしました
- 後で戻って修正するという完全な意図を持って
- しかし、コードは現在機能しています
- そしてそれは修正されずにライブになりました
- そして誰もそれを壊す責任を負いたくない
- そして誰もそれを修正するためにお金を使いたくない
- そして、それを優先度を高くするために十分な顧客が不満を言っていません
- 多くの人が不満を言っていたとしても、Verisignを購入するのはたったの99ドルです。
- それで、あなたはそれを手放してベリサインのものを買うことができないのですか?
...それは大丈夫だろう。私がそれを信じないことを除いて。本番環境に移行したのはテストコードだとは思いません。他の署名者を無視させたのは、意識的で具体的な決定であると私は感じます。そして、彼らはベリサインを尊重するだけであり、これからもそうし続けるでしょう。
しかし、私の人生のために、私は理由を考えることができません。
hash - MicrosoftはwinqualイベントのイベントIDをどのように生成しますか?
winqualでアイテムを識別するために使用されるIDに興味があります。
ある種のハッシュだと思います。これは公開されていますか?
モジュール名、そのバージョン、およびオフセットのハッシュ?
これは適切なようですが、切り捨て/不可逆アルゴリズムを使用しない限り、サイズが小さすぎて可能性をカバーできません。
これは、クライアントマシンのミニダンプで生成されているようです。
macos - MacOSX用のWinqual
MicrosoftのWinQualforWindowsアプリケーションを使用してエラーレポートを使用できるように、macアプリケーションのアプリケーションクラッシュを確認する方法はありますか?
ありがとうございました!
よろしくUwe
outlook-addin - Outlook COM アドインから Windows エラー報告を手動でトリガーする
Visual Studio 2008 と VSTO を使用して Outlook COM アドインを作成しています。アドインで例外が処理されない場合、Windows エラー報告 (WER) をトリガーしたいと考えています。当社は WinQual にアクセスできるため、プログラムで発生したユーザーからの WER レポートのレポートを取得できます。これを行う方法はありますか?
私が知る限り、これは不可能ですが、方法があるかどうかを確認したかったのです。WER は、アプリケーションが未処理の例外を生成した場合にのみトリガーされます。Outlook で実行される Outlook アドインと Outlook には、COM アドインへの呼び出しの周りに例外ハンドラーがあり、COM アドインが原因で Outlook がクラッシュするのを防ぎます。Outlook はクラッシュしないため、WER はトリガーされません。
windows-error-reporting - Windows 一時ディレクトリに対して WER の「追加ファイルの要求」を実行する方法はありますか?
私の会社では、インストールの問題のように見えるものが原因で、Windows エラー レポートに多数のクラッシュが報告されています。通常、インストールのログは windows\temp ディレクトリにあります。インストールログファイルを「追加ファイルのリクエスト」エントリとして含めたいのですが、提供されている環境変数のリストのサブディレクトリにアクセスする方法がないようです。Windows 一時ディレクトリは、作業できる値のリストにないため、行き詰まっています。
一般に、「追加ファイルのリクエスト」を介してほとんど何でも利用できる方法がわかりません。たとえば、%programfiles% ディレクトリには有用なファイルを含めるべきではなく、製品のサブディレクトリに配置する必要があります。私は何が欠けていますか?
minidump - WER で追加データを要求する方法は?
私は WER を初めて使用します (実際、数日前に登録したばかりです)。
アカウントを確立し、テスト アプリケーションをそれにマップすることができました。
ただし、未処理の例外を呼び出すと、追加のファイルが収集されていないことがわかります (BucketID <> 8 の適切なレポートがソリューション センターにあり、winqual にはまだ到着していませんが、少なくとも送信されました)。
Version.txt、AppCompat.txt、minidump.mdmp などのファイルが収集されることを期待しています。また、 WerRegisterFile 関数を使用してファイルを追加しようとしました。エラーはありませんが、ファイルも送信されません。
このスレッドを読みました- サーバーが要求した場合にのみ、追加のデータが収集されると書かれています。それで、私の質問は(ばかげているように聞こえるかもしれませんが...)、追加のデータを要求するにはどうすればよいですか? プロファイル内のすべてをスキャンしましたが、有用なオプションは製品/ファイル マッピングに関連するものだけです。
これは明らかなはずだと思います(ヘルプでは説明されていません)が、...行き詰まっています:(どこを見るべきかを示すスクリーンショットがいいでしょう:)
windows - Windows エラー報告をテストするにはどうすればよいですか?
私の会社は、Winqual を介して Windows エラー報告に参加しています。WERRegisterMemoryBlock を使用して、クラッシュ レポートにデータを追加したいと考えています。もちろん、次のバージョンを出荷する前に、これが機能することを確認したいと考えています. どのようにテストできますか?
送信される内容をローカルで正確にプレビューする方法はありますか? これは、Winqual から取得できるものを現実的に再現していますか?
あるいは、開発者のマシンから実際のレポートを生成し、そのレポートを Winqual から取得することはできますか? このテスト ケースと残りの Winqual データをどのように区別しますか?
windows-7 - 「Windows 7 と互換性がある」安価なコード署名
現在、「Windows 7 互換」の認定を探しています。取得するには、コード署名を実装する必要があります。今、私は安価な証明書を探しています。スタック オーバーフローの質問で、Verisign証明書の安価な代替品をいくつか見つけました。安価なJava コード署名証明書? (自己署名ではありません) .
インターネットのどこかで、Microsoft は証明書のみを受け入れるというコメントを見つけました。これは本当ですか、それともComodo証明書を使用できますか?
winqual - WER (winqual) Web サービス API はどこかに文書化されていますか?
次のような SOAP API を介してWERデータにアクセスする例をいくつか見つけることができます。powershell.aspx
彼らが呼び出している API はどこかに文書化されていますか?
c++ - ミニダンプ ファイルまたは例外構造がある場合、winqual が使用する「バケット ID」を取得するにはどうすればよいですか? (Windows C++)
SOには関連する質問がいくつかありますが、答えは見つかりませんでした-
「署名」/バケット ID を生成して、ミニダンプ/クラッシュを問題追跡システムに報告したいと考えています。MSはすでに「バケットID」でこれを行っているため、バケット/署名の生成を再利用できると考えました。
トップ レベル フィルター、フィルター内にある _EXCEPTION_POINTERS オブジェクト、_MINIDUMP_EXCEPTION_INFORMATION 構造体、またはミニダンプ自体からその ID を取得できますか?
これは C++ アプリケーションです。