アーティファクト署名に関する FAQ

アーティファクト署名サービスに関する一般的な質問に対する回答を取得します。

概要

アーティファクト署名でサポートされている Windows のバージョンは何ですか?

成果物署名サービスは、一般的なユーザー モード コード整合性 (UMCI) セキュリティ ポリシーをサポートするすべてのバージョンの Windows をサポートします。

署名されたバイナリのサポートは、2021 年 7 月の Windows 向け証明書信頼リスト (CTL) 更新プログラムに追加されました。 一般的なシナリオでは、コンピューターでチェーンからのエンドエンティティ証明書が発生すると、システムはルート証明機関 (CA) 証明書を取得し、信頼ルート ストアに追加します。

成果物署名の Windows サポートの詳細については、「 成果物署名プログラムの Windows サポート」を参照してください。

Microsoft Entra で成果物の署名に API アクセス権を付与するにはどうすればよいですか?

Microsoft Entra 管理者に、アクセスの要求を承認するよう依頼します。 アクセス許可の詳細については、次の記事を参照してください。

リソース プロバイダーとして Microsoft.CodeSigning が表示されない場合はどうすればよいですか?

Microsoft.CodeSigning アプリを登録するには、次の例に示すように、サブスクリプションの [リソース プロバイダー] ペインに移動します。

Microsoft.CodeSigning リソース プロバイダーの登録のスクリーンショット。

Microsoft.CodeSigning をリソース プロバイダーとして登録できない場合はどうすればよいですか?

Microsoft.CodeSigning リソース プロバイダーは、無料または試用版の Azure サブスクリプションではサポートされていません。 プロバイダーを登録するには、有料の Azure サブスクリプションが必要です。

アーティファクト署名を使用する場合のコストは何ですか?

アーティファクト署名を設定する場合のサポート オプション

  • Azure portal でサポート チケットを作成して、Azure サポートを受けてください。 また、Microsoft Q&A ( タグ成果物署名を使用) または Stack Overflow (タグ 信頼署名を使用) に質問を投稿したり、関連する質問を検索したりすることもできます。

本人確認

別のプライマリ メール アドレスを持つ同じ組織に対して別の ID 検証を作成する必要がある場合はどうなりますか?

プライマリ 電子メール アドレスで ID 検証が存在し、別の ID の検証要求が必要な場合は、サポートに連絡してオンボードを続行してください。

[ID 検証] ページの [国/地域] ドロップダウンに国/地域が表示されない場合はどうなりますか?

  • パブリック トラスト証明書の場合、アーティファクト署名は現在、米国、カナダ、欧州連合、英国の組織、および米国およびカナダの個々の開発者が利用できます。 この制限は、プライベート信頼証明書には適用されません。

アーティファクト署名のサブジェクト名が証明書の名前と異なり、MSIX パッケージ名が現在異なる場合はどうなりますか?

  • Windows アプリ MSIX パッケージの場合は、「MSIX 永続 ID」のガイダンスに従います。

アーティファクト署名でカスタム CN またはカスタム O を使用できますか?

  • いいえ。成果物署名でカスタム共通名 (CN) またはカスタム組織 (O) を使用することはできません。 現在、成果物署名サービスではカスタマイズはサポートされていません。 また、公的に信頼されているコード サイニング証明書に関する Code Signing Baseline Requirements (CSBRs) において、Certification Authority Browser Forum (CA/Browser Forum) は、CN 値は、常に法人格の検証済み名称 (Contoso Corporation など) でなければならないと定めていることに留意してください。

Azure portal の [新しい本人確認] ボタンが非アクティブの場合はどうすればよいですか?

本人確認の有効期限が切れた場合はどうすればよいですか?

  • 有効期限までに本人確認を更新しないと、証明書の更新が停止します。 それらの特定の証明書プロファイルに関連付けられているすべての署名プロセスが停止されます。 アーティファクト署名サービスを使用して署名を続行するには、別の ID 検証を作成し、関連する証明書プロファイルに関連付けます。 本人確認の更新プロセスを開始するために、本人確認の有効期限の 60 日前から複数のリマインダーが送信されます。

組織 ID 検証に失敗した場合は、どうなりますか?

  • ID 検証要求の作成時に入力したプライマリ 電子メール アドレスに送信された電子メール検証リンクを見逃さなかったことを確認します。 リンクは 7 日後に有効期限切れになります。 メールを見逃した場合、または 7 日以内にメール内のリンクを選択しなかった場合は、新しい本人確認要求を作成します。
  • 本人確認に失敗し、失敗の理由がメール検証を見逃したことではない場合、Microsoft 検証チームは、提供された情報に基づいてお客様の要求に関する決定を行うことができませんでした。 要求時に追加のドキュメントをご提供いただいた場合でも、情報を検証できなければ、成果物の署名への参加はできません。 このシナリオでは、未使用のリソースに対して課金されないように、アーティファクト署名アカウントを削除することをお勧めします。
  • 追加書類が必要だった場合は、3 回の最大試行回数に達したことを示します。 そのため、オンボーディングをこれ以上進めることはできません。

本人確認に関してサポートが必要な場合は、どうすればよいですか?

  • アーティファクト署名での ID 検証に関する質問については、Azure サポートまたは Microsoft Q&A (タグ 成果物署名を使用) を使用して、お問い合わせください。
  • 注: 進行中の同じエンティティに対して追加の ID 検証要求を作成しても役に立ちません。 ID 検証要求を迅速化することはできません。

メールの本人確認リンクの有効期限が切れている場合はどうすればよいですか?

  • 7 日以内に電子メールの検証をクリックできなかった場合は、新しい ID 検証要求を開始する必要があります。 同じ要求で新しいリンクを再送信することはできません。

メールの本人確認で、[失敗] と表示され、メールの本人確認リンクを受信しなかった場合、どうしたらよいですか?

  • 別の本人確認要求を作成します。 使用するメール アドレスが配布リストではなく、メール アドレスが外部メール アドレスからリンクを受信できることを確認します。

ID 検証 ID はどこにありますか?

  • [ID 検証] ページで、目的の ID 検証をクリックします。 ID 検証 ID は、表示される詳細ウィンドウに "ID" として表示されます。 同一性確認のためのIDをコピーする様子を示すスクリーンショット。

検証済み ID を既に持っている場合はどうすればよいですか?

  • アーティファクト署名の既存の有効な (期限切れではない) VID を表示するには、手順に従います。

個人 ID の検証では、銀行報告書または公共料金に住所がない場合はどうなりますか?

  • プロセスを正常に実行するには、政府発行の ID をアドレスと共に使用してください。

個々の ID 検証では、"このページにアクセスするアクセス許可がありません" というエラーが表示されます。

  • エラーが表示される場合は、個々の ID 検証要求に入力された電子メール アドレスが、ID 検証リンクへのアクセスにサインインに使用されるメール アドレスと異なるためです。 両方のメール アドレスが一致していることを確認します。
    個々の開発者を確認するためのアクセス リンク時の電子メールの不一致のスクリーンショット。

証明書プロファイル

アーティファクト署名のサブジェクト名が証明書の名前と異なり、MSIX パッケージ名が現在異なる場合はどうなりますか?

  • Windows アプリ MSIX パッケージの場合は、「MSIX 永続 ID」のガイダンスに従います。

証明書プロファイルを削除すると、証明書は取り消されますか?

  • 証明書プロファイルを削除しても、以前に発行された証明書が取り消されたり、署名が無効にされたりすることはありません。これらは有効なままです。

パブリック信頼またはパブリック信頼テストまたは VBS エンクレーブ証明書プロファイルに OU フィールドを追加できますか?

  • No. OU は、プライベート信頼とプライベート信頼 CI ポリシー証明書でのみ使用できます。

署名

アーティファクト署名を使用して署名できるファイルの種類は何ですか?

成果物署名コンプライアンスレベルとは何ですか?

FIPS 140-2 レベル 3。

ELAM ドライバー リソースの証明書に対して適切な EKU を含めるにはどうしたらよいですか?

マルウェア対策ユーザーモード サービスを保護するための Early Launch Antimalware (ELAM) ドライバー構成の詳細については、次のガイダンスを参照してください。

"2022 年より、すべてのユーザー モードのマルウェア対策サービス バイナリは、Microsoft の成果物署名サービスによって署名されている必要があります。 マルウェア対策バイナリに署名するために発行されたアーティファクト署名 Authenticode 証明書は、セキュリティのために 3 日間有効です。 証明書が更新されるたびに ELAM ドライバーを更新する必要を防ぐために、マルウェア対策ベンダーは、ELAM ドライバー リソース ファイル情報の CertHash 部分にアーティファクト署名 PCA 証明書 TBS ハッシュを含めうことをお勧めします。 さらに、マルウェア対策ベンダーは、リソース ファイル情報の EKU フィールドに一意のアーティファクト署名 EKU ID を含める必要があります。 EKU ID は、1.3.6.1.4.1.311.97.* のプレフィックスで始まります。"

Microsoft ID Verified Code Signing PCA 2021 証明書については、「Microsoft PKI Services リポジトリ」を参照してください。

アーティファクト署名の更新プログラムがないコンピューター (特に /INTEGRITYCHECK のフラグが設定されているバイナリ) で、成果物署名を使用して署名されたバイナリを実行するとどうなりますか?

  • /INTEGRITYCHECK フラグが設定されている場合、ユーザーの署名は実行時に検証されず、/INTEGRITYCHECK では実行されません。
  • 成果物署名の更新プログラムがインストールされているかどうかを確認するには、パッケージ化された /INTEGRITYCHECK にリンクされた DLL のいずれかに対して確認することをお勧めします。 テスト バージョンを使用できます。 そうすることで、プラットフォームの外部の /INTEGRITYCHECK にリンクされたバイナリのチェックを完了し、可用性を判断できます。

Sectigo 証明書の有効期限が迫っています。 新しいものを取得できますか、それともアーティファクト署名を使用する必要がありますか?

現在、Microsoft は、クロス署名証明書を拡張していません。 アーティファクト署名サービスを使用して署名する必要があります。

パートナーがパートナー センターで行う署名と成果物の署名の違いは何ですか?

パートナー センターでの署名はカーネル モードの署名です (成果物の署名の導入による変更はありません)。 アーティファクト署名を使用してユーザー モード バイナリに署名します。 Windows Security Center (WSC) サービスとやりとりするアプリの場合は、Code Integrity ビット (/INTEGRITYCHECK) を含める必要があります。 成果物署名署名がないと、WSC に登録することはできません。また、Windows Defender は並列で実行されます。

Authenticode 証明書を取得するにはどうすればよいですか?

プロファイルでの署名に使用される Authenticode 証明書がユーザーに付与されることはありません。 すべての証明書はサービス内に安全に格納され、署名時にのみアクセスできます。 公開証明書は、サービスが署名するすべてのバイナリに常に含まれます。

タイム スタンプ サービスが正常かどうかを確認するにはどうすればよいですか?

次のコマンドを実行します: curl http://timestamp.acs.microsoft.com 状態コード 200 が返された場合、タイム スタンプ サービスは正常であり、実行中です。

プライベート信頼署名を行うとエラーが発生します。 どうしたらいいでしょう。

内部エラーが発生した場合は、使用した CN 名が証明書名と一致することを確認します。 パッケージ名を確認し、署名時に Azure portal からサブジェクトの完全な値をマニフェスト ファイルにコピーします。

SignTool に対して状態 "コマンドが成功しました" と表示されますが、デジタル署名を確認してもファイルが署名されていないように見えます。 どうしたらいいでしょう。

署名がデジタル署名プロパティに表示されない場合は、次のコマンドを実行します: .\signtool.exe verify /v /debug /pa fileName。 すべてのファイルの種類のプロパティ[署名] タブが含まれているわけではありません。

SignTool + dlib コマンドを実行するときに、Azure 仮想マシンのポップアップ資格情報を修正するにはどうすればよいですか?

  1. ユーザー割り当てマネージド ID を作成します。
  2. ユーザー割り当てマネージド ID をVM に追加する:
    1. VM を選択します。
    2. 左側のメニューで、[ID][ユーザー割り当て] の順に選択します。
    3. [追加] を選択してマネージド ID を追加します。
  3. 成果物署名証明書プロファイル署名者ロールを持つリソース グループ (またはサブスクリプション) で、ユーザー割り当てマネージド ID をロールに追加します。 正しいロールを割り当てるには、[アクセス制御 (IAM)]>、[ロールの割り当て] の順に選択します。

Google Cloud Platform を使用するときにポップアップ資格情報を修正するにはどうすればよいですか?

  • Google Cloud Platform (GCP) には既定で Azure マネージド ID リソースがないため、環境資格情報を設定します。 [EnvironmentCredential クラス] を使用して、資格情報を設定します。 次の変数を使用することをお勧めします。

    • Microsoft Entra テナント (ディレクトリ) ID 用 AZURE_TENANT_ID
    • テナントでのアプリ登録のクライアント (アプリケーション) ID 用 AZURE_CLIENT_ID
    • アプリ登録用に生成されたクライアント シークレット用 AZURE_CLIENT_SECRET
  • クライアント ID とシークレットを作成するには、「サービス プリンシパルを作成する」のガイダンスに従います。

  • クライアント ID とシークレットを作成したら、成果物署名証明書プロファイル署名者ロールを持つリソース グループ (またはサブスクリプション) に移動し、このアプリをロールに追加します。

アーティファクト署名アカウントが中断された場合はどうしますか?

サービス利用規約に従って証明書が悪用または悪用された場合、アーティファクト署名はアカウントを中断するか、署名証明書またはその両方を取り消します。 このシナリオでは、お客様と直接やり取りし、CA/Browser Forum CSBRs のガイドラインに従います。

自分のサブスクリプション ID またはテナント ID を変更した場合はどうすればよいですか?

現時点では、成果物署名リソースは、サブスクリプション、テナント、リソース グループ、またはリソース間で移行することはできません。 テナント ID またはサブスクリプション ID を変更する場合は、すべての成果物署名リソースを再度作成する必要があります。

アーティファクト署名は EV 証明書を発行しますか?

いいえ。成果物署名では、拡張検証 (EV) 証明書は発行されません。 今後 EV 証明書を発行する予定はありません。

MSIX パッケージの署名中に SignTool がループし続けるのはなぜですか?

パッケージ内の各アプリケーション ファイルとマニフェスト ファイルが署名されるため、MSIX 署名では複数回ループされることが予想されます。

一般的なエラー コードと軽減策

エラー 詳細
400 Azure 認証エラー。 このエラーは、証明書のキャッシュが原因です。 JSON ファイルに "ExcludeCredentials": ["<include list of credentials to be excluded>"] を追加します。 詳細については、「DefaultAzureCredential クラス (Azure.Identity)」を参照してください。
401 認証されていません。 サインアウトし、もう一度サインインします。
404 構成またはファイアウォール規則に変更が加えられていないことを確認します。
"MsalUiRequiredException" このエラーは通常、ローカル キャッシュが原因で発生します。 エラーは、Azure からキャッシュが更新されると解決します。
すべての条件を満たす証明書が見つかりませんでした。 dlib パス、dlib バージョン、dlib 名、ファイル名、SignTool のバージョンを確認します。 このエラーは、SignTool がアーティファクト署名証明書を使用する代わりに、ローカル コンピューターから証明書をプルしようとしていることを示します。
エラー: "SignerSign() に失敗しました。" (-2147024846/0x80070032) 最新バージョンの SignTool を使用していることを確認してください。
エラー コード (-2147024885/0x8007000b) MSIX 署名の場合、このエラーはマニフェスト ファイルの発行元が証明書のサブジェクトと一致しないことを示します。 マニフェスト ファイルに一覧表示されている発行元を確認します。
エラー コード (-2147467259/0x80004005) サービス プリンシパル + 証明書ベースの認証を使用する場合は、次の表に一覧されている "証明書を使用したサービス プリンシパル" の環境変数を確認します。
エラー コードはなく、SignTool が警告なしで失敗します 関連する .NET ランタイム バージョンがインストールされていることを確認します。
Azure.Identity.CredentialUnavailableException このエラーは、Azure 外の環境で表示される場合があります。 Azure の外部で作業している場合は、マニフェスト ファイルに "exclude ManagedIdentity" を追加することをお勧めします。
4:03 - Azure サブスクリプションの状態が "登録済み" である必要があることを確認します。
- ファイルに署名しようとしている ID にアーティファクト署名証明書プロファイル署名者ロールがあることを確認します。
- metadata.json ファイルのアーティファクト署名アカウント名と成果物署名証明書プロファイル名を確認します。
- dlib と dlib のパスを確認します。
- https://docs.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170 から C++ 再頒布可能パッケージをインストールします。
- .NET バージョン、dlib バージョン、Windows SDK バージョンを確認します。
- 対応する本人確認の状態が [完了] かどうかを確認します。
- 証明書プロファイルの状態がアクティブになっている必要があります。
- この仮想マシンまたはコンピューターから成果物署名エンドポイントにアクセスするかどうかを確認します。 別の仮想マシンまたはコンピューターでアクションの実行を試行します。 このエラーは、ネットワークの問題を示している可能性があります。
- プライベート信頼シナリオ 403 の場合: 署名を行うユーザー オブジェクト ID は、Get-azCodeSigningRootCert を呼び出すユーザー オブジェクト ID とは異なります。 適切なオブジェクト ID には、成果物署名証明書プロファイル署名者の役割が必要です。

コスト管理 + 請求

アーティファクト署名リソースの使用コストと課金情報を表示するにはどうすればよいですか?

コスト情報を確認するには、Azure portal で、[サブスクリプションの概要] に移動します。 左側のメニューで、[コスト管理] を選択します。 詳細については、「コスト管理」を参照してください。

請求情報を確認するには、[サブスクリプションの概要] に移動します。 左側のメニューで [課金] を選択します。 詳細については、「課金」を参照してください。

価格は日割りで計算されますか、それともサービスを使用し始める時期にかかわらず、全額が請求されますか?

価格はプロラタベースでは計算されません。 請求書は、アカウント作成後のサービス利用開始時期に関係なく、アカウント作成時に選択した SKU の全額で生成されます。

署名クォータには何が含まれますか?

署名クォータには、アーティファクト署名アカウント内のすべての証明書プロファイルにわたるすべての署名アクティビティが含まれます。

アーティファクト署名サービスからの登録解除

アーティファクト署名から登録を解除するにはどうすればよいですか?

  • アーティファクト署名から登録を解除するには、アーティファクト署名アカウントを削除します。
  • Microsoft.CodeSigning をリソース プロバイダーとして登録解除します。
  • アカウントを削除すると、このアカウントの下にある証明書プロファイルが削除されます。 これにより、証明書の更新が停止され、それらの具体的な証明書プロファイルに関連付けられている署名プロセスが実質的に停止されます。 ただし、アカウントを削除しても、ファイルの署名に既に使用されていた証明書には影響しません。
  • ID 検証が同じサブスクリプション内の異なる成果物署名アカウント間で共有され、証明書プロファイルとそれらのアカウントからの署名に影響を与える可能性がある場合は、関連付けられている ID 検証を明示的に削除する必要があります。

アーティファクト署名証明書の誤用と不正使用

アーティファクト署名証明書の誤用や不正使用の疑いについて、外部のユーザーが Microsoft に報告するにはどうすればよいですか?

お問い合わせください: https://www.microsoft.com/en-us/wdsi/filesubmission

アーティファクト署名証明書の誤用と不正使用が確認された場合はどうなりますか?

アーティファクト署名は、誤用または不正使用が確認された場合、証明書を取り消し、アーティファクト署名サービスへのアクセスを中断する可能性があります。