我有一个表单,用户可以在其SSL证书的副本中输入。用户倾向于只输入注释而不是实际的证书。我可以用什么正则表达式来确保他们输入有效的证书?
答案 0 :(得分:1)
我可以使用什么样的正则表达式来确保他们输入有效的证书?
没有一个。证书有效期取决于到期日期,数字签名的完整性以及签名者自己的证书的有效性。没有正则表达式可以检查所有这些。
另一方面,如果您只想拒绝直接垃圾,请参阅我的问题中的评论。
答案 1 :(得分:1)
以下正则表达式将帮助您验证WHMCS中需要有效证书结构的自定义字段。
/^(?:(?!-{3,}(?:BEGIN|END) CERTIFICATE)[\s\S])*(-{3,}BEGIN CERTIFICATE(?:(?!-{3,}END CERTIFICATE)[\s\S])*?-{3,}END CERTIFICATE-{3,})(?![\s\S]*?-{3,}BEGIN CERTIFICATE[\s\S]+?-{3,}END CERTIFICATE[\s\S]*?$)/
只需将其粘贴到验证字段中即可。
我修改了the answer to this question上找到的正则表达式。
如果您的自定义字段需要证书签名请求,也可以使用该问题的正则表达式:
/^(?:(?!-{3,}(?:BEGIN|END) NEW CERTIFICATE REQUEST)[\s\S])*(-{3,}BEGIN NEW CERTIFICATE REQUEST(?:(?!-{3,}END NEW CERTIFICATE REQUEST)[\s\S])*?-{3,}END NEW CERTIFICATE REQUEST-{3,})(?![\s\S]*?-{3,}BEGIN NEW CERTIFICATE REQUEST[\s\S]+?-{3,}END NEW CERTIFICATE REQUEST[\s\S]*?$)/