【Excel】デジタル署名付きマクロの証明書が期限切れ!Excelのタイムスタンプ更新と再署名の手順

【Excel】デジタル署名付きマクロの証明書が期限切れ!Excelのタイムスタンプ更新と再署名の手順
🛡️ 超解決

Excelで作成したマクロを含むブックを配布する際、セキュリティを高めるためにデジタル署名を行うことがあります。しかし、このデジタル署名に使用する証明書には有効期限があります。証明書が期限切れになると、マクロの実行時にセキュリティ警告が表示され、ユーザーがマクロを信頼しにくくなる可能性があります。この記事では、期限切れとなったデジタル署名のタイムスタンプを更新し、マクロブックを再署名する手順を解説します。

これにより、マクロの信頼性を維持し、安全にブックを共有できるようになります。

【要点】マクロのデジタル署名証明書期限切れ時の対応

  • タイムスタンプの更新: 期限切れ証明書でも、新しいタイムスタンプサーバーを使用して署名を更新できます。
  • 証明書の再取得・更新: 信頼できる認証局から新しい証明書を取得または更新する必要があります。
  • マクロブックへの再署名: 更新された証明書と新しいタイムスタンプで、マクロを含むExcelブックに再度デジタル署名を行います。

ADVERTISEMENT

マクロのデジタル署名証明書が期限切れになる原因

Excelでマクロ(VBA)を含むブックにデジタル署名を行う際、その署名には「証明書」が使用されます。この証明書は、通常、信頼できる第三者機関(認証局)によって発行されており、発行元を証明するものです。しかし、この証明書には有効期限が設定されています。証明書の発行元によっては、一定期間ごとに更新が必要となります。

証明書の有効期限が切れると、Excelは「このデジタル署名は無効です」といった警告を表示するようになります。これは、署名が発行された時点から現在までの間に、証明書が無効になっているためです。ユーザーは、署名が古いためにマクロの安全性を疑う可能性があります。そのため、期限切れの証明書で署名されたマクロブックを配布し続けることは推奨されません。

お探しの解決策が見つからない場合は、こちらの「Excelトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

タイムスタンプの更新と証明書の再取得・再署名の必要性

マクロにデジタル署名を行うプロセスは、主に2つの要素で構成されます。1つは「証明書」そのものであり、もう1つは署名が行われた「タイムスタンプ」です。証明書が期限切れになった場合、たとえ署名自体は有効な期間内に行われていたとしても、その証明書が無効になっているため、Excelは警告を表示します。

この問題を解決するには、まず「証明書」を新しいものに更新(または再取得)する必要があります。そして、その新しい証明書を使用して、マクロブックに「再署名」を行う必要があります。さらに、再署名を行う際には、最新の「タイムスタンプサーバー」を利用して、署名がいつ行われたかの証拠(タイムスタンプ)を記録することが重要です。これにより、ユーザーはマクロの実行時に「署名が発行された証明書は有効期限内であった」ことを確認できるようになります。

マクロのタイムスタンプ更新と再署名の手順

マクロを含むExcelブックのデジタル署名証明書が期限切れになった場合、以下の手順でタイムスタンプを更新し、再署名を行います。この作業には、事前に新しいデジタル証明書を取得しておく必要があります。個人で利用する場合は、自己署名証明書を作成することも可能ですが、信頼性の観点からは認証局から発行された証明書が推奨されます。

  1. 新しいデジタル証明書の取得または更新
    まず、信頼できる認証局から新しいデジタル証明書を取得するか、既存の証明書を更新します。証明書は通常、.pfxファイルとして提供され、パスワードで保護されています。
  2. Excelブックを開く
    再署名したいマクロを含むExcelブックを開きます。
  3. 「開発」タブを表示する
    Excelのリボンに「開発」タブが表示されていない場合は、表示させる必要があります。
    1.「ファイル」タブをクリックします。
    2.「オプション」を選択します。
    3.「Excelのオプション」ダイアログボックスで、「リボンのユーザー設定」をクリックします。
    4.右側の「メインタブ」一覧で、「開発」にチェックを入れ、「OK」をクリックします。
  4. 「デジタル署名」を選択する
    「開発」タブが表示されたら、グループ「コード」の中にある「デジタル署名」ボタンをクリックします。
  5. 「デジタル署名」ダイアログボックスの確認
    「このブックには署名がありません。」または「このブックには署名が1つ以上あります。」というメッセージが表示されます。既存の署名を削除して再署名するために、「署名の削除」ボタンがある場合はクリックします。
  6. 「デジタル署名」ダイアログボックスで「署名の選択」
    「署名の選択」ボタンをクリックします。
  7. 使用する証明書の選択
    「デジタル署名」ダイアログボックスが表示されたら、先ほど取得または更新した証明書を選択し、「OK」をクリックします。
  8. タイムスタンプサーバーの指定
    「デジタル署名」ダイアログボックスに戻るので、「タイムスタンプの選択」ボタンをクリックします。
  9. 新しいタイムスタンプサーバーのURLを入力
    「タイムスタンプサーバー」ダイアログボックスが表示されます。ここに、最新のタイムスタンプサーバーのURLを入力します。例えば、「http://timestamp.globalsign.com/scripts/timstamp.dll」のようなURLです。正確なURLは、証明書の発行元や利用しているサービスによって異なりますので、確認してください。
    「OK」をクリックします。
  10. 署名の確定
    「デジタル署名」ダイアログボックスに戻るので、「OK」をクリックします。証明書のパスワードを求められたら、入力して「OK」をクリックします。
  11. ブックの保存
    署名が完了したら、Excelブックを「.xlsm」(マクロ有効ブック)形式で保存します。

ADVERTISEMENT

証明書が期限切れの場合のよくある問題と対処法

デジタル署名に使用した証明書が期限切れになった場合、ユーザーがマクロを有効にする際にセキュリティ警告が表示されます。この警告は、署名が有効な期間内に行われていたとしても、証明書自体が無効であるために表示されます。ユーザーは、この警告を見てマクロの安全性を疑い、実行をためらう可能性があります。

「このデジタル署名は無効です」という警告が表示される

この警告は、署名に使用された証明書が、署名後に期限切れになったか、または署名時にすでに無効であった場合に表示されます。たとえタイムスタンプが有効であっても、署名元の証明書が無効であれば、この警告は回避できません。

対処法: 上記の手順に従い、新しい証明書でマクロブックを再署名してください。再署名時には、必ず最新のタイムスタンプサーバーを指定することが重要です。

タイムスタンプサーバーに接続できない

再署名の手順中に、指定したタイムスタンプサーバーに接続できないという問題が発生することがあります。これは、ネットワークの問題、サーバーの一時的なダウン、またはURLの誤りなどが原因として考えられます。

対処法:

  1. ネットワーク接続の確認
    インターネットに正常に接続できているか確認してください。
  2. タイムスタンプサーバーURLの確認
    入力したタイムスタンプサーバーのURLが正しいか、再度確認してください。URLに誤りがあると接続できません。
  3. 別のタイムスタンプサーバーを試す
    利用している認証局やサービスが提供する、別のタイムスタンプサーバーのURLがあれば、そちらを試してみてください。
  4. 時間を置いて試す
    サーバー側の一時的な問題である可能性もあります。しばらく時間をおいてから再度試してみてください。

署名後もセキュリティ警告が消えない

再署名を行ったにも関わらず、ユーザーがマクロを有効にする際にセキュリティ警告が表示され続ける場合があります。これは、Excelのセキュリティ設定や、ブックの保存形式、あるいは署名プロセス自体の問題が考えられます。

対処法:

  1. ブックの保存形式を確認する
    マクロを含むブックは、必ず「マクロ有効ブック (.xlsm)」または「Excelバイナリブック (.xlsb)」で保存されていることを確認してください。標準の「.xlsx」形式で保存すると、マクロやデジタル署名が失われます。
  2. Excelのセキュリティセンター設定を確認する
    ユーザーのExcelの「セキュリティセンター」設定で、「すべてのマクロを無効にする」などが選択されている場合、署名されたマクロでも警告が表示されることがあります。ただし、署名されたマクロは、通常、信頼できる発行元であれば警告なしで実行される設定になっています。
  3. 署名の再削除と再実行
    念のため、一度署名を削除し、手順を最初からやり直して再署名してみてください。
  4. 証明書の信頼性確認
    ユーザーのPCに、署名に使用した証明書が信頼できるものとして登録されているか確認してください。不明な発行元の証明書は、警告が表示される原因となります。

まとめ

Excelでマクロを含むブックに付与したデジタル署名の証明書が期限切れになると、マクロの信頼性が損なわれ、ユーザーにセキュリティ警告が表示されます。この記事で解説した手順に従い、新しい証明書を取得し、タイムスタンプを更新してマクロブックを再署名することで、この問題を解決できます。

再署名後は、マクロブックを「.xlsm」形式で保存し、ユーザーに配布してください。これにより、マクロの安全性を確保し、スムーズな業務遂行を支援できます。証明書の有効期限管理は、定期的に行うことが重要です。

📊
Excelトラブル完全解決データベースこの記事以外にも、様々なエラー解決策をまとめています。困った時の逆引きに活用してください。

ADVERTISEMENT

この記事の監修者
📈

超解決 Excel・Word研究班

企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。

🏆
超解決 Excel検定 あなたのExcel実務能力を3分で測定!【1級・2級・3級】