Patent ID: 8806195

Claim:
A method comprising: receiving user input at a processing device that selects one of a plurality of certificate profiles for requesting a certificate, wherein each of the plurality of certificate profiles defines a set of defaults of the certificate's contents and a set of constraints for values associated with the certificate's contents contained in the certificate, wherein the set of constraints comprises a renewal grace period constraint and a key type constraint that specifies one or more permissible key types for a key contained in the certificate; generating, by the processing device an enrollment page with a profile enrollment form using the set of defaults and the set of constraints associated with the selected certificate profile, wherein the enrollment page is a web-based service page and the enrollment form is a Hypertext Transport Protocol (HTTP) based enrollment form, and wherein the generating the enrollment page comprises: retrieving a template file associated with the selected certificate profile for the enrollment form; modifying the template file according to the set of constraints associated with the selected certificate profile so that a user requesting the certificate is unable to request a certificate that does not comply with the set of constraints of the selected certificate profile; and presenting, by the processing device, the enrollment page with the profile enrollment form to the user; responsive to the user selection of one of the key types presented in the enrollment form, sending a request for information about the key type to a browser of a client; receiving the requested information about the selected key type from the browser of the client; responsive to receiving the requested information about the selected key type from the browser of the client, determining whether the client supports the selected key type in view of the requested information from the browser; receiving the profile enrollment form from the user with input provided by the user; generating an enrollment request for the certificate using the profile enrollment form and the input provided by the user in connection with the profile enrollment form; and sending the enrollment request to a certificate system (CS) subsystem to authenticate, authorize and issue the certificate, wherein the enrollment request complies with the set of constraints of the selected certificate profile before sending the enrollment request to the CS subsystem.