Page History
...
| Code Block |
|---|
// CredentialVault og Factory CredentialVault signingVault = CredentialVaultTestUtil.getVoces3CredentialVault(new ClasspathCredentialVault(null, "Filnavn på PKCS#12 Virksomhedscertifikat", "Kodeord til Virksomhedscertifikat"); SOSIFactory sosiFactory = new SOSIFactory(signingVault, new java.util.Properties()); Reply reply = sosiFactory.deserializeReply(serviceConsumerResponseXml); // Verify DGWS service response for errors if (reply.isFault()) { log.error("Response error: " + reply.getFaultString() + ", error code: " + reply.getFaultCode()); return false; } return true; |
...
| Code Block | ||
|---|---|---|
| ||
public class TestFactoryFlow extends AbstractUserIDCardTest { @Test public void testNewSecurityTokenService() { /** * Consumer sender request * */ // CredentialVault og Factory CredentialVault signingVault = CredentialVaultTestUtil.getVoces3CredentialVault(); new ClasspathCredentialVault(null, "Filnavn på PKCS#12 Virksomhedscertifikat", "Kodeord til Virksomhedscertifikat"); SOSIFactory factory = new SOSIFactory(signingVault, new java.util.Properties()); // System ID kort CareProvider careProvider = new CareProvider(SubjectIdentifierTypeValues.CVR_NUMBER, "someID33257872", "someOrgNameSundhedsdatastyrelsen"); SystemIDCard systemIDCard = factory.createNewSystemIDCard("SOSITEST", careProvider, AuthenticationLevel.VOCES_TRUSTED_SYSTEM, null, null, null, "SOSITEST", careProvider, AuthenticationLevel.VOCES_TRUSTED_SYSTEM, null, null, signingVault.getSystemCredentialPair().getCertificate(), "AltIdentifierStr"); // Byg STS request SecurityTokenRequest consumerStsRequest = factory.createNewSecurityTokenRequest(); consumerStsRequest.setIDCard(systemIDCard); // Endelig STS request Document consumerStsRequestDocument = consumerStsRequest.serialize2DOMDocument(); /** * Send request over netværk */ String consumerStsRequestXml = XmlUtil.node2String(consumerStsRequestDocument, false, false); /** * STS modtager request */ SecurityTokenRequest stsRequest = factory.deserializeSecurityTokenRequest(consumerStsRequestXml); // Her vil STS'en verificerevalidere ID kortet. I dette eksempel verificeres følgende tre attributter:: IDCard idCard = stsRequest.getIDCard(); idCard.validateSignature(); IDCard idCard = stsRequestidCard.getIDCardvalidateSignatureAndTrust(signingVault); // I dette eksempel verificeres følgende tre attributter: Assert.assertEquals("1.0.1", idCard.getVersion()); Assert.assertEquals(AuthenticationLevel.VOCES_TRUSTED_SYSTEM, idCard.getAuthenticationLevel()); Assert.assertEquals("AltIdentifierStr", idCard.getAlternativeIdentifier()); /** * STS bygger response */ SecurityTokenResponse stsResponse = factory.createNewSecurityTokenResponse(stsRequest); stsResponse.setIDCard(idCard); Document consumerStsResponseDocument = XmlUtil.createEmptyDocument(); stsResponse.serialize2DOMDocument(consumerStsResponseDocument); /** * Send response over netværk */ String consumerStsResponseXml = XmlUtil.node2String(consumerStsResponseDocument, false, false); /** * Consumer modtager response */ SecurityTokenResponse consumerStsResponse = factory.deserializeSecurityTokenResponse(consumerStsResponseXml); // Verify ID card IDCard idCardResponse = consumerStsResponse.getIDCard(); if (!systemIDCard.isValidInTime()) { throw new RuntimeException("Invalid DGWS Token"); } Assert.assertEquals("1.0.1", idCardResponse.getVersion()); Assert.assertEquals(AuthenticationLevel.VOCES_TRUSTED_SYSTEM, idCardResponse.getAuthenticationLevel()); Assert.assertEquals("AltIdentifierStr", idCardResponse.getAlternativeIdentifier()); } } |
...