This is an Azure function app created to improve SSL monitoring for Hudu and add expirations for certificates not tied to websites. This is in response to the following feature request: https://hudu.canny.io/feature-requests/p/security-certificate-tracking
- Creates 'SSL Certificate' Asset Layout
- Monitors assets for changes to the Certificate field and populates other certificate properties
- PSA Integration: Create tickets for Native/Custom SSL Certificates and Domains
- Supported PSAs
- ConnectWise Manage
- Supported PSAs
- Generic Properties
- HuduDomainExclusionlist - Comma separated list of website names to match and skip ticket creation
- HuduPSAIntegration - Set this to the matching integration name in Hudu (e.g. cw_manage), this enables ticketing for expirations
- PSATicketAdditionalNotes - Notes to append ticket initial description
- ConnectWise Manage
- CWM_Server - Server hostname for cw manage
- CWM_CompanyID - Company ID (from logon screen)
- CWM_PublicKey - API Credential public key
- CWM_PrivateKey - API Credential private key
- CWM_ClientID - Client ID from CW Developer site
- CWM_ServiceBoard - Service board name
- CWM_NewStatus - New service ticket status
- CWM_ResolvedStatus - Resolved service ticket status
- CWM_ServiceType - (Optional) Type to apply to service ticket
- CWM_ServiceSubType - (Optional) Sub-type to apply to service ticket
- Azure subscription and function app
- Hudu hostname and API key
- Generate a Hudu API key https://yourhuduserver/admin/api_keys
- Fork this repository
- Deploy the Azure Function App to your environment
- Fill in the details of the deployment template with the appropriate API keys.
- Disconnect and reconnect GitHub to enable Run from Package mode
- Create a new SSL Certificate asset and populate the Certificate field with the Base64 contents.
- The function app runs every 30 minutes looking for modified assets.
This project utilizes some of the helper functions and approaches written by Kelvin Tegelaar from the CIPP project https://github.com/KelvinTegelaar/CIPP and is licensed under the same terms.