Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<h1 align="center" style="border-bottom: none">
DigiCert CertCentral Gateway AnyCA Gateway REST Plugin
DigiCert CertCentral AnyCA Gateway REST Plugin
</h1>

<p align="center">
Expand Down Expand Up @@ -41,10 +41,10 @@ The Digicert CertCentral AnyCA REST plugin extends the capabilities of Digicert'

## Compatibility

The DigiCert CertCentral Gateway AnyCA Gateway REST plugin is compatible with the Keyfactor AnyCA Gateway REST 24.2.0 and later.
The DigiCert CertCentral AnyCA Gateway REST plugin is compatible with the Keyfactor AnyCA Gateway REST 24.2.0 and later.

## Support
The DigiCert CertCentral Gateway AnyCA Gateway REST plugin is supported by Keyfactor for Keyfactor customers. If you have a support issue, please open a support ticket with your Keyfactor representative. If you have a support issue, please open a support ticket via the Keyfactor Support Portal at https://support.keyfactor.com.
The DigiCert CertCentral AnyCA Gateway REST plugin is supported by Keyfactor for Keyfactor customers. If you have a support issue, please open a support ticket with your Keyfactor representative. If you have a support issue, please open a support ticket via the Keyfactor Support Portal at https://support.keyfactor.com.

> To report a problem or suggest a new feature, use the **[Issues](../../issues)** tab. If you want to contribute actual bug fixes or proposed enhancements, use the **[Pull requests](../../pulls)** tab.

Expand All @@ -56,7 +56,7 @@ An API Key within your Digicert account that has the necessary permissions to en

1. Install the AnyCA Gateway REST per the [official Keyfactor documentation](https://software.keyfactor.com/Guides/AnyCAGatewayREST/Content/AnyCAGatewayREST/InstallIntroduction.htm).

2. On the server hosting the AnyCA Gateway REST, download and unzip the latest [DigiCert CertCentral Gateway AnyCA Gateway REST plugin](https://github.com/Keyfactor/digicert-certcentral-caplugin/releases/latest) from GitHub.
2. On the server hosting the AnyCA Gateway REST, download and unzip the latest [DigiCert CertCentral AnyCA Gateway REST plugin](https://github.com/Keyfactor/digicert-certcentral-caplugin/releases/latest) from GitHub.

3. Copy the unzipped directory (usually called `net6.0` or `net8.0`) to the Extensions directory:

Expand All @@ -67,11 +67,11 @@ An API Key within your Digicert account that has the necessary permissions to en
Program Files\Keyfactor\AnyCA Gateway\AnyGatewayREST\net8.0\Extensions
```

> The directory containing the DigiCert CertCentral Gateway AnyCA Gateway REST plugin DLLs (`net6.0` or `net8.0`) can be named anything, as long as it is unique within the `Extensions` directory.
> The directory containing the DigiCert CertCentral AnyCA Gateway REST plugin DLLs (`net6.0` or `net8.0`) can be named anything, as long as it is unique within the `Extensions` directory.

4. Restart the AnyCA Gateway REST service.

5. Navigate to the AnyCA Gateway REST portal and verify that the Gateway recognizes the DigiCert CertCentral Gateway plugin by hovering over the ⓘ symbol to the right of the Gateway on the top left of the portal.
5. Navigate to the AnyCA Gateway REST portal and verify that the Gateway recognizes the DigiCert CertCentral plugin by hovering over the ⓘ symbol to the right of the Gateway on the top left of the portal.

## Configuration

Expand Down
6 changes: 3 additions & 3 deletions digicert-certcentral-caplugin/CertCentralCAPlugin.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1178,12 +1178,12 @@ private async Task<EnrollmentResult> ExtractEnrollmentResult(CertCentralClient c
else // We should really only get here if there is a misconfiguration (e.g. set up for approval in DigiCert)
{
_logger.LogWarning($"Order {orderResponse.OrderId} did not return a CertificateId. Manual intervention may be required");
if (orderResponse.Requests.Any(x => x.Status == CertCentralConstants.Status.PENDING))
if (orderResponse.Requests.Any(x => x.Status == CertCentralConstants.Status.PENDING || x.Status == CertCentralConstants.Status.NEEDS_APPROVAL))
{
_logger.LogTrace($"Attempting to approve order '{orderResponse.OrderId}'.");

// Attempt to update the request status.
int requestId = int.Parse(orderResponse.Requests.FirstOrDefault(x => x.Status == CertCentralConstants.Status.PENDING).Id);
int requestId = int.Parse(orderResponse.Requests.FirstOrDefault(x => x.Status == CertCentralConstants.Status.PENDING || x.Status == CertCentralConstants.Status.NEEDS_APPROVAL).Id);
UpdateRequestStatusRequest updateStatusRequest = new UpdateRequestStatusRequest(requestId, CertCentralConstants.Status.APPROVED);
UpdateRequestStatusResponse updateStatusResponse = client.UpdateRequestStatus(updateStatusRequest);

Expand All @@ -1200,7 +1200,7 @@ private async Task<EnrollmentResult> ExtractEnrollmentResult(CertCentralClient c
}
else
{
status = (int)EndEntityStatus.FAILED;
status = (int)EndEntityStatus.EXTERNALVALIDATION;
statusMessage = $"Approval of order '{orderResponse.OrderId}' failed. Check the gateway logs for more details.";
}
}
Expand Down
Loading