diff options
author | Andrew Wnuk <awnuk@redhat.com> | 2013-11-15 18:35:01 -0800 |
---|---|---|
committer | Andrew Wnuk <awnuk@redhat.com> | 2013-11-18 14:29:22 -0800 |
commit | 3e413200912690b4680f65efc2c9dc11f3a18fab (patch) | |
tree | be4ade39c3f3ba5370fabd2dfaf63228c9007d14 /base/kra | |
parent | 7893dac9736701f4e6bd518328e24c0fa5e83ef3 (diff) | |
download | pki-3e413200912690b4680f65efc2c9dc11f3a18fab.tar.gz pki-3e413200912690b4680f65efc2c9dc11f3a18fab.tar.xz pki-3e413200912690b4680f65efc2c9dc11f3a18fab.zip |
REST interface extension
This patch provides REST interface extension allowing recovery of asymmetric keys.
Ticket #439.
Diffstat (limited to 'base/kra')
-rw-r--r-- | base/kra/functional/src/com/netscape/cms/servlet/test/DRMTest.java | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/base/kra/functional/src/com/netscape/cms/servlet/test/DRMTest.java b/base/kra/functional/src/com/netscape/cms/servlet/test/DRMTest.java index 8b254a5e3..06c368e5b 100644 --- a/base/kra/functional/src/com/netscape/cms/servlet/test/DRMTest.java +++ b/base/kra/functional/src/com/netscape/cms/servlet/test/DRMTest.java @@ -491,6 +491,44 @@ public class DRMTest { } catch (RequestNotFoundException e) { log("Success: getting non-existent request throws an exception: "+e.getMessage()+" ("+e.getRequestId().toHexString()+")"); } + + // Test 24: Request x509 key recovery + // This test requires to retrieve keyId and matching certificate + // from installed instances of CA and DRM + String keyID = "1"; + String b64Certificate = "MIIC+TCCAeGgAwIBAgIBDDANBgkqhkiG9w0BAQsFADBOMSswKQYDVQQKDCJ1c2Vy"+ + "c3lzLnJlZGhhdC5jb20gU2VjdXJpdHkgRG9tYWluMR8wHQYDVQQDDBZDQSBTaWdu"+ + "aW5nIENlcnRpZmljYXRlMB4XDTEzMTAyNTE5MzQwM1oXDTE0MDQyMzE5MzQwM1ow"+ + "EzERMA8GCgmSJomT8ixkAQEMAXgwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB"+ + "ALhLfGmKvxFsKXPh49q1QsluXU3WlyS1XnpDLgOAhgTNgO4sG6CpPdv6hZYIvQBb"+ + "ZQ5bhuML+NXK+Q+EIiNk1cUTxgL3a30sPzy6QaFWxwM8i4uXm4nCBYv7T+n4V6/O"+ + "xHIM2Ch/dviAb3vz+M9trErv9t+d2H8jNXT3sHuDb/kvAgMBAAGjgaAwgZ0wHwYD"+ + "VR0jBBgwFoAUh1cxWFRY+nMsx4odQQI1GqyFxP8wSwYIKwYBBQUHAQEEPzA9MDsG"+ + "CCsGAQUFBzABhi9odHRwOi8vZG9ndGFnMjAudXNlcnN5cy5yZWRoYXQuY29tOjgw"+ + "ODAvY2Evb2NzcDAOBgNVHQ8BAf8EBAMCBSAwHQYDVR0lBBYwFAYIKwYBBQUHAwIG"+ + "CCsGAQUFBwMEMA0GCSqGSIb3DQEBCwUAA4IBAQCvmbUzQOouE2LgQQcKfmgwwJMJ"+ + "9tMrPwDUtyFdaIFoPL4uZaujSscaN4IWK2r5vIMJ65jwYCI7sI9En2ZfO28J9dQj"+ + "lpqu6TaJ+xtaMk7OvXpVB7lJk73HAttMGjETlkoq/6EjxcugmJsDqVD0b2tO7Vd0"+ + "hroBe2uPDHM2ASewZF415lUcRh0URtmxSazTInbyxpmy1wgSJQ0C6fMCeT+hUFlA"+ + "0P4k1TIprapGVq7FpKcqlhK2gTBfTSnoO7gmXG/9MxJiYpb/Aph8ptXq6quHz1Mj"+ + "greWr3xTsy6gF2yphUEkGHh4v22XvK+FLx9Jb6zloMWA2GG9gpUpvMnl1fH4"; + + log("Requesting X509 key recovery."); + recoveryRequestId = client.requestKeyRecovery(keyID, b64Certificate); + log("Requesting X509 key recovery request: " + recoveryRequestId); + + // Test 25: Approve x509 key recovery + log("Approving X509 key recovery request: " + recoveryRequestId); + client.approveRecovery(recoveryRequestId); + + // Test 26: Recover x509 key + log("Recovering X509 key based on request: " + recoveryRequestId); + try { + KeyData recoveredX509Key = client.recoverKey(recoveryRequestId, "netscape"); + log("Success: X509Key recovered: "+ recoveredX509Key.getP12Data()); + } catch (RequestNotFoundException e) { + log("Error: recovering X509Key"); + } } private static void log(String string) { |