Beispiel #1
0
 public CertProcessor(ICertProcessorConfig config)
 {
     Config           = config;
     _warningStatuses = X509ChainStatusFlags2.AboutExpire
                        | X509ChainStatusFlags2.WeakRsaPublicKey
                        | X509ChainStatusFlags2.HasWeakSignature;
 }
        static String chainStatusToString(X509ChainStatusFlags2 status)
        {
            String[] tokens          = status.ToString().Split(new[] { ", " }, StringSplitOptions.RemoveEmptyEntries);
            var      resourceManager = new ResourceManager(typeof(ChainStatusText));
            var      sb = new StringBuilder();

            foreach (String chainStatus in tokens)
            {
                String text = HttpUtility.HtmlEncode(resourceManager.GetString(chainStatus));
                switch (chainStatus)
                {
                case "NoError":
                    sb.AppendLine(String.Format(HtmlTemplate.HTML_CHAIN_STATUS_ENTRY, "success", chainStatus, text));
                    break;

                case "AboutExpire":
                case "WeakRsaPublicKey":
                case "HasWeakSignature":
                    sb.AppendLine(String.Format(HtmlTemplate.HTML_CHAIN_STATUS_ENTRY, "warning", chainStatus, text));
                    break;

                default:
                    sb.AppendLine(String.Format(HtmlTemplate.HTML_CHAIN_STATUS_ENTRY, "danger", chainStatus, text));
                    break;
                }
            }

            return(sb.ToString());
        }