アプリケーションが使用するWebサービスがあり、開発者はWebサービスへのhttps接続を必要とします。これは内部Webサービスであるため、自己署名証明書を使用しますか?
アプリケーションが使用するWebサービスがあり、開発者はWebサービスへのhttps接続を必要とします。これは内部Webサービスであるため、自己署名証明書を使用しますか?
回答:
自己署名証明書ではなく、ローカルルートCAを作成し、そこからSSL証明書を生成し、すべての内部システムにルートCAの公開キーのコピーがあることを確認します。
この方法で生成されたキーは、プレーンなHTTPS以外にも多くの用途があり、OpenVPN、POP3S、SMTPSなど、個々のSMIMEアカウントにも使用できます。
組織に単一のルートCAを持つことは、証明書を必要とするすべてのサーバーに対して料金を請求し、必要に応じて「ライセンス料」を請求することを認められた認定CAによって身代金を差し押さえられるよりもはるかに優れています負荷分散クラスター内の複数のサーバーに同じ証明書を配置します。
CAcertを試してください。それらは無料です。ルートをインストールするだけです。自己署名証明書を持つ上記の1つのステップ。
コストが問題であり、Windows中心の場合は、Denny氏が提案しているように、Microsoft証明書サービスを使用して、デフォルトドメインGPOの一部として証明書を展開します。3つのシステムが必要になる可能性がありますが、VMにすることもできます。ルートCAが必要になります。これは、中間CAの証明書の発行にのみ使用する必要があります。1つの中間CAをエンタープライズCAとし、3番目を「スタンドアロン」CAにして、ドメイン以外のアセットに証明書を発行できるようにする必要があります。
多数のクライアントがあり、十分な大きさがある場合は、サードパーティソリューションの1つからルートを取得し、サードパーティから証明書を取得するCAから独自の証明書を発行することを検討できます。そうすれば、CAの証明書を展開する必要はありません。たとえば、GeoTrustからのソリューションがあります。
自己署名証明書の問題は、一般に、クライアントが検証されていないという警告を発することです。セキュリティ設定によっては、完全にブロックする人もいます。
これが純粋に内部的なニーズである場合、httpのinstaedを使用するのはなぜですか?
個人的には、httpを使い続けるか、安価な証明書を購入します(それほど高価ではありません)。