Visual Studio 2008 VSTO の ClickOnce

ClickOnce は署名を確認しにいくので ClickOnce アプリケーション用の信頼された発行者をクライアント コンピュータに追加する にあるように、信頼されたルート証明機関まで証明書チェーンが検証できる状態の「信頼された発行者」を追加しておく必要がある。

手元でテストした範囲では以下のようになった。

  • ドメインに参加したマシンの場合、「エンタープライズ証明機関で発行したコード署名用証明書」による署名、であれば特に作業は不要
  • ドメインに参加していないマシンにおいて、検証できなかった時のエラーが『Base-64 文字列に無効な文字が含まれています。』だった

この後者のエラーメッセージは、日本語としては全く意味不明である。確かに最終的に例外が出ているメソッドが System.Convert.FromBase64String なので内部的にそのままエラーメッセージを出すとそうなるのは分かるのだが。

ちなみに Convert.FromBase64String を呼び出しているのは System.Security.Cryptography.Xml.ManifestSignedXml.BuildSignatureChain で、これを見ればマニフェストファイル中にある証明書を検証しようてして失敗していることは分かる。

余裕があれば後で https://www.microsoft.com/japan/msdn/vstudio/feedback/default.aspx にフィードバックを投げよう。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。