fix: Separated the logic between Certificate Expiry Notification and Ignore TLS/SSL errors for HTTPS websites#7447
Conversation
Ignore TLS/SSL errors for HTTPS websites. Now when a user selects the Ignore TLS/SSL errors for HTTPS websites option, the Ceritificate Expiry Notification option is not disabled. Instead Expiry Notifications work as should, and all the functionality remains as is (warnings regarding TLS/SSL errors). I've also verified that the notifications work as expected, so it triggers when the Certificate Expiry Notification option is selected and not triggered when not selected.
|
Hello and thanks for lending a paw to Uptime Kuma! 🐻👋 |
Ignore TLS/SSL errors for HTTPS websites. Now when a user selects the Ignore TLS/SSL errors for HTTPS websites option, the Ceritificate Expiry Notification option is not disabled. Instead Expiry Notifications work as should, and all the functionality remains as is (warnings regarding the TLS/SSL errors). I've also verified that the notifications work as expected, so it triggers when the Certificate Expiry Notification option is selected and not triggered when not selected.
|
I don't think the way these options would link after this PR works well. We specifically disabled this because it is a footgun otherwise. |
I can't understand why this is a footgun. For whatever reasons I might want to monitor a webserver which is using a self-signed certificate and for which I would like to reissue the certificate when approaches it's end of life. Why a notification of the expiration day is a problem? If I don't want it I can still disable it. Also all the other functionality regarding the TLS/SSL checks remain the same. |
|
Just check our history and git blame to find out why, like #4029. It may be working for your case, but there are a lot of cases you have to test and handle. |
Yes exactly! The problem reported in #4029 is what this commit resolves. It will still consider and process the expiry notifications even if the Ignore TLS/SSL error for HTTPS websites option is selected. The changes are minor and not mess the existing functionality. It just adds the option to get Notifications even if you decide to Ignore the TLS/SSL errors (obviously expired certificate is an error). If you don't want the notifications you just don't select the specific option. |
|
Sorry, but I have read and re-read the #4029 many times. In Describe your problem of that issue the author says: The solution proposed and implemented in #5156 didn't resolve the issue in terms of enabling the notifications but it just removed this functionality for self-signed certificates because it was not working. A similar issue is reported in #6464, where the author of this mentions the separation of the CA as a possible solution. The proposed solution in this request is based on separation of functionality. The logic for "Certificate Expiry Notification" is separated from the logic of the "Ignore TLS/SSL errors for https websites". It's been now handled as something different but functional no matter what the other options are. All the error functionality still works (including the certificate expiration) but also the Certificate Expiry Notification works even if there are errors in the TLS/SSL certificate. |
|
If you ignore errors anyhow, certificate expirations does not make sense to me. I think there is a better system to be had (not two checkboxes), but just re-adding the checkbox does not resolve the issue. |
Summary
In this pull request, the following changes are made:
Please follow this checklist to avoid unnecessary back and forth (click to expand)
I understand that I am responsible for and able to explain every line of code I submit.
Screenshots for Visual Changes
Before:
After: