|
8 | 8 | "update_catalog": true, |
9 | 9 | "description": "AnyCA REST Gateway plugin for CERTInext (eMudhra) certificate lifecycle management platform", |
10 | 10 | "gateway_framework": "24.2.0", |
11 | | - "release_dir": "CERTInext/bin/Release/net8.0", |
| 11 | + "release_dir": "CERTInext/bin/Release", |
12 | 12 | "release_project": "CERTInext/CERTInext.csproj", |
13 | 13 | "about": { |
14 | 14 | "carest": { |
15 | | - "product_ids": [], |
| 15 | + "product_ids": [ |
| 16 | + "838", |
| 17 | + "839", |
| 18 | + "840", |
| 19 | + "842", |
| 20 | + "843", |
| 21 | + "844", |
| 22 | + "846" |
| 23 | + ], |
16 | 24 | "ca_plugin_config": [ |
17 | 25 | { |
18 | 26 | "name": "ApiUrl", |
19 | | - "description": "REQUIRED: Base URL of the CERTInext REST API, e.g. https://us.certinext.io" |
| 27 | + "description": "REQUIRED: Base URL of the CERTInext REST API for your environment (e.g. https://api.certinext.io/emSignHub-API). Must include the /emSignHub-API/ path segment." |
| 28 | + }, |
| 29 | + { |
| 30 | + "name": "AccountNumber", |
| 31 | + "description": "REQUIRED: Your CERTInext account number (numeric string). Found in the portal under Account Settings." |
20 | 32 | }, |
21 | 33 | { |
22 | 34 | "name": "AuthMode", |
23 | | - "description": "REQUIRED: Authentication mode — one of 'ApiKey', 'Basic', or 'OAuth2'. Default: 'ApiKey'." |
| 35 | + "description": "REQUIRED: Authentication mode — 'AccessKey' (default, HMAC-based signing) or 'OAuth' (bearer token via client credentials)." |
24 | 36 | }, |
25 | 37 | { |
26 | 38 | "name": "ApiKey", |
27 | | - "description": "API key for authenticating with CERTInext. Required when AuthMode is 'ApiKey'." |
| 39 | + "description": "The REST API Access Key generated in the CERTInext portal. Used to compute authKey = SHA256(accessKey + ts + txn). Required when AuthMode is 'AccessKey'." |
| 40 | + }, |
| 41 | + { |
| 42 | + "name": "OAuthTokenUrl", |
| 43 | + "description": "OAuth token endpoint URL. Required when AuthMode is 'OAuth'." |
| 44 | + }, |
| 45 | + { |
| 46 | + "name": "OAuthClientId", |
| 47 | + "description": "OAuth client ID. Required when AuthMode is 'OAuth'." |
| 48 | + }, |
| 49 | + { |
| 50 | + "name": "OAuthClientSecret", |
| 51 | + "description": "OAuth client secret. Required when AuthMode is 'OAuth'." |
| 52 | + }, |
| 53 | + { |
| 54 | + "name": "RequestorName", |
| 55 | + "description": "REQUIRED: Name of the person or service submitting certificate orders. Sent in the requestorInformation block of every order." |
28 | 56 | }, |
29 | 57 | { |
30 | | - "name": "Username", |
31 | | - "description": "Username for Basic authentication. Required when AuthMode is 'Basic'." |
| 58 | + "name": "RequestorEmail", |
| 59 | + "description": "REQUIRED: Email address for the requestor. Must be a valid email associated with your CERTInext account." |
32 | 60 | }, |
33 | 61 | { |
34 | | - "name": "Password", |
35 | | - "description": "Password for Basic authentication. Required when AuthMode is 'Basic'." |
| 62 | + "name": "RequestorIsdCode", |
| 63 | + "description": "International dialing code for the requestor phone number (digits only, no + prefix). Default: 1 (United States)." |
36 | 64 | }, |
37 | 65 | { |
38 | | - "name": "OAuth2TokenUrl", |
39 | | - "description": "OAuth2 token endpoint URL. Required when AuthMode is 'OAuth2'. Example: https://us.certinext.io/oauth/token" |
| 66 | + "name": "RequestorMobileNumber", |
| 67 | + "description": "Requestor mobile number (digits only, no country code). Included in the requestorInformation block." |
40 | 68 | }, |
41 | 69 | { |
42 | | - "name": "OAuth2ClientId", |
43 | | - "description": "OAuth2 client ID. Required when AuthMode is 'OAuth2'." |
| 70 | + "name": "SignerPlace", |
| 71 | + "description": "REQUIRED: City or location of the person accepting the subscriber agreement on behalf of your organization." |
44 | 72 | }, |
45 | 73 | { |
46 | | - "name": "OAuth2ClientSecret", |
47 | | - "description": "OAuth2 client secret. Required when AuthMode is 'OAuth2'." |
| 74 | + "name": "SignerIp", |
| 75 | + "description": "REQUIRED: Public IP address of the host accepting the subscriber agreement." |
| 76 | + }, |
| 77 | + { |
| 78 | + "name": "DefaultProductCode", |
| 79 | + "description": "Default numeric product code to use when no ProductCode is set on the certificate template. If omitted and the template also has no product code, enrollment will fail." |
48 | 80 | }, |
49 | 81 | { |
50 | 82 | "name": "IgnoreExpired", |
51 | 83 | "description": "If true, expired certificates will be skipped during synchronization. Default: false." |
52 | 84 | }, |
53 | 85 | { |
54 | 86 | "name": "PageSize", |
55 | | - "description": "Number of certificates to fetch per page during synchronization. Default: 100, max: 500." |
| 87 | + "description": "Number of orders to retrieve per page during synchronization. Default: 100, max: 500." |
56 | 88 | }, |
57 | 89 | { |
58 | 90 | "name": "Enabled", |
59 | | - "description": "Flag to Enable or Disable gateway functionality. Disabling is primarily used to allow creation of the CA connector prior to configuration information being available." |
| 91 | + "description": "Enables or disables the CA connector. Set to false to save the connector record before credentials are available without triggering a live connectivity test. Default: true." |
60 | 92 | } |
61 | 93 | ], |
62 | 94 | "enrollment_config": [ |
63 | 95 | { |
64 | | - "name": "ProfileId", |
65 | | - "description": "REQUIRED: The CERTInext certificate profile/product ID to use for enrollment. This maps to a profile configured in the CERTInext portal." |
| 96 | + "name": "ProductCode", |
| 97 | + "description": "REQUIRED: The numeric CERTInext product code for the type of certificate to issue (e.g. 838 for DV SSL). Overrides the connector-level DefaultProductCode when set." |
66 | 98 | }, |
67 | 99 | { |
68 | | - "name": "ValidityDays", |
69 | | - "description": "OPTIONAL: Validity period in days for issued certificates. If omitted, the profile default is used." |
| 100 | + "name": "ValidityYears", |
| 101 | + "description": "Subscription validity period in years: 1, 2, or 3. Default: 1." |
70 | 102 | }, |
71 | 103 | { |
72 | 104 | "name": "AutoApprove", |
73 | | - "description": "OPTIONAL: If true, the gateway will attempt automatic approval of certificates returned in a pending-approval state. Default: false." |
| 105 | + "description": "If true, the gateway will attempt automatic approval of certificates returned in a pending-approval state. Default: false." |
74 | 106 | }, |
75 | 107 | { |
76 | 108 | "name": "RequesterName", |
77 | | - "description": "OPTIONAL: Default requester name to include in the enrollment request." |
| 109 | + "description": "Per-template override for the requestor name. Overrides the connector-level RequestorName for orders using this template." |
78 | 110 | }, |
79 | 111 | { |
80 | 112 | "name": "RequesterEmail", |
81 | | - "description": "OPTIONAL: Default requester email address." |
| 113 | + "description": "Per-template override for the requestor email address. Overrides the connector-level RequestorEmail." |
82 | 114 | }, |
83 | 115 | { |
84 | 116 | "name": "RenewalWindowDays", |
85 | | - "description": "OPTIONAL: Number of days before expiration within which a renewal is attempted instead of a reissue. Default: 90." |
| 117 | + "description": "Number of days before expiration within which a renewal is attempted instead of a reissue. Default: 90." |
86 | 118 | }, |
87 | 119 | { |
88 | 120 | "name": "KeyType", |
89 | | - "description": "OPTIONAL: Key algorithm hint (e.g. 'RSA2048', 'RSA4096', 'EC256', 'EC384'). If omitted, the profile default is used." |
| 121 | + "description": "Key algorithm hint (e.g. RSA2048, RSA4096, EC256, EC384). If omitted, the product default is used." |
| 122 | + }, |
| 123 | + { |
| 124 | + "name": "DomainName", |
| 125 | + "description": "Primary domain name for SSL/TLS orders. If omitted, the gateway derives the domain from the CSR CN field." |
| 126 | + }, |
| 127 | + { |
| 128 | + "name": "SignerName", |
| 129 | + "description": "Per-template override for the subscriber agreement signer name. Defaults to the connector-level RequestorName." |
| 130 | + }, |
| 131 | + { |
| 132 | + "name": "SignerPlace", |
| 133 | + "description": "Per-template override for the subscriber agreement signer location. Defaults to the connector-level SignerPlace." |
| 134 | + }, |
| 135 | + { |
| 136 | + "name": "SignerIp", |
| 137 | + "description": "Per-template override for the subscriber agreement signer IP address. Defaults to the connector-level SignerIp." |
90 | 138 | } |
91 | 139 | ] |
92 | 140 | } |
|
0 commit comments