use of com.venafi.vcert.sdk.policy.domain.PolicySpecification in project vcert-java by Venafi.
the class TppTokenConnectorTest method testExceptionValidatingDefaultOrg.
@Test
@DisplayName("TPP - Testing Exception in Validation of Defaults Org not matching with the Policy Orgs values")
public void testExceptionValidatingDefaultOrg() throws VCertException {
PolicySpecification policySpecification = TppTestUtils.getPolicySpecification();
// setting the Default Org to a value which doesn't match with the values in the
// Policy Orgs values to validate that the related VCertException is thrown
policySpecification.defaults().subject().org("Ven");
Exception exception = assertThrows(VCertException.class, () -> classUnderTest.setPolicy(TppTestUtils.getRandomZone(), policySpecification));
Assertions.assertEquals(TppTestUtils.getVCertExceptionMessage(TPPPolicySpecificationValidator.DEFAULT_ATTRIBUTE_DOESNT_MATCH_EXCEPTION_MESSAGE, PolicySpecificationConst.ATT_DEFAULTS_SUBJECT_ORG, PolicySpecificationConst.ATT_POLICY_SUBJECT_ORGS), exception.getMessage());
}
use of com.venafi.vcert.sdk.policy.domain.PolicySpecification in project vcert-java by Venafi.
the class PolicyManagementJsonExample method main.
public static void main(String[] args) {
try {
// replace it by the policy full name
String policyName = "<APP_NAME>\\<CIT_ALIAS>";
// replace it by the api-key
String tppl_api_key = "<APIKEY>";
// replace it by the path where the policy_specification.json file will be
String json_source_file = "<PARENT_PATH>/policy_specification.json";
// replace it by the path where the policy_specification_result.json file will be
String json_target_file = "<PARENT_PATH>/policy_specification_result.json";
// 1. Get an instance of com.venafi.vcert.sdk.policy.domain.PolicySpecification class.
// At this time it is going to use the Jackson parser to get an instance of PolicySpecification given a Json file.
// You can learn more about Jackson parser in https://github.com/FasterXML/jackson
// and http://tutorials.jenkov.com/java-json/jackson-objectmapper.html
ObjectMapper mapper = new ObjectMapper();
mapper.setVisibility(PropertyAccessor.FIELD, JsonAutoDetect.Visibility.ANY);
mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
mapper.enable(SerializationFeature.INDENT_OUTPUT);
PolicySpecification policySpecification = mapper.readValue(new File(json_source_file), PolicySpecification.class);
// 2. Get a VCertClient. For this time, it's going to use a VCertClient for Cloud.
Authentication auth = Authentication.builder().apiKey(tppl_api_key).build();
Config config = Config.builder().connectorType(ConnectorType.CLOUD).build();
VCertClient client = new VCertClient(config);
client.authenticate(auth);
// 3. Use the VCertClient method setPolicy() to set a Policy.
// If the the policy doesn't exist then it will be created.
// If the the policy exists then it will be updated.
client.setPolicy(policyName, policySpecification);
// 4. You can get the Policy which you created/updated using the getPolicy method and then use it
// to write it in json format using the Jackson parser.
PolicySpecification policyTemp = client.getPolicy(policyName);
mapper.writeValue(new File(json_target_file), policyTemp);
} catch (Exception e) {
e.printStackTrace();
}
}
Aggregations