解説

インサイド .NET Framework [改訂版]

第7回 コード・アクセス・セキュリティ(その2)

吉松 史彰
2003/08/20
Page1 Page2 Page3 Page4

コラム:テスト用の証明書の利用方法

 .NET Framework SDKに付属する証明書作成ツールmakecert.exeを利用する場合、例えば次のようなコマンドで、テスト証明書を作成できる。

C:\TEMP>makecert -n "CN=Fumiaki Yoshimatsu" -sk CspContainer -sr currentuser -ss My -# 1 -$ commercial Test.cer

 makecert.exeを利用した場合も、Microsoftのテストサイトから証明書を発行してもらった場合も、デフォルトのWindows上では役に立たない証明書が作成される。役に立たない理由は、その証明書を発行した第三者機関自体が信頼されていないからだ。あくまでもテストを行う目的で、テストの期間中だけ、テスト用のマシン上で実験したい場合は、上記の手順で作成した証明書の発行元(Certificate Authority;CA)を信頼するという作業を行わなければならない。

 この作業を行うには、作成された証明書のファイル(Test.cer)をダブルクリックして開き(画面)、[証明のパス]タブを表示する。すると、赤いバツ印がついたルート証明期間のアイコンが証明のパスの頂点に表示されるので(画面)、それを選択し、[証明書の表示]ボタンをクリックする。信頼されていないルート証明機関の証明書情報が表示されるので(画面)、その[詳細]タブをクリックし(画面)、[ファイルにコピー]ボタンをクリックする(以下の画面はクリックするとウィンドウ全体のイメージを表示します)。

 証明書のエクスポート・ウィザードが起動するので(画面)、[次へ]ボタンをクリックし、次の画面も(画面)デフォルトのまま[次へ]ボタンをクリックする。最後にファイル名を入力し(画面)、[次へ]ボタンをクリックすると完了画面が表示される(画面)ので、[完了]ボタンをクリックして終了する。これで、指定したファイルにルート証明機関の証明書がエクスポートされた。  

 エクスポートされた証明書は、Windowsの証明書ストアに格納しなければ機能しない。そのため、まず[ファイル名を指定して実行]でmmc.exeを起動する。[コンソール1]が開いたら、[ファイル]-[スナップインの追加と削除]を選択する。ウィンドウが開くので(画面)、[追加]ボタンをクリックする。スナップインの一覧が表示されるので、[証明書]を選択して(画面)、[追加]ボタンをクリックする。もう1つウィンドウが開くので、[ユーザー アカウント]が選択されていることを確認して(画面)、[完了]ボタンをクリックし、[閉じる]ボタンをクリックし、[OK]ボタンをクリックする。

 証明書コンソールが作成されたら、[信頼されたルート証明機関]を展開し、[証明書]フォルダを右クリックする。表示されたメニューから[すべてのタスク]-[インポート]を選択すると(画面)、証明書のインポート・ウィザードが起動する(画面)。[次へ]ボタンをクリックし、表示された画面で先ほどエクスポートしたファイルのファイル名を入力し(画面)、[次へ]ボタンをクリックし、次の画面も(画面)デフォルトのまま[次へ]ボタンをクリックすると完了画面が表示される(画面)。ここで[完了]ボタンをクリックすると最後の確認メッセージ(画面)が表示されるので、[はい]をクリックすればルート証明機関の証明書がインストールされる。

 
 
 

 ここまでできたら、もう一度先ほどの証明書(Test.cer)を開いてみよう。赤いバツ印が消え、証明書として有効になったことが分かる。ここまでの手順はあくまでもテスト用であることを忘れないでほしい。セキュリティ上重大な設定をしていることを認識し、テストが終わったら速やかに今インストールしたルート証明機関を、MMCコンソールを使って削除しないと、そのマシンに重大なセキュリティ・ホールが残ったままになる。End of Article


 INDEX
  解説 インサイド .NET Framework [改訂版]
  第7回 コード・アクセス・セキュリティ(その2)
    1.収集されたエビデンスの取得
    2.厳密名やロード方法により変化するエビデンス
    3.X.509証明書によるエビデンスの提供
  4.コラム:テスト用の証明書の利用方法
 
インデックス・ページヘ  「解説:インサイド .NET Framework [改訂版]」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間