From 027d34b558876f78681c79715466b5b612004339 Mon Sep 17 00:00:00 2001 From: Pamela Dragosh Date: Thu, 29 Oct 2020 08:57:09 -0400 Subject: Update Tutorial Documentation Point to actual code and remove the eclipse instructions as developers should look elsewhere for these instructions. Adding enforcement tutorial. Issue-ID: POLICY-2876 Change-Id: I793c1fae72f832afe7098be57a94f4929e9deb9a Signed-off-by: Pamela Dragosh --- .../tutorial/tutorial/TutorialApplicationTest.java | 120 --------------------- .../test/resources/tutorial-decision-request.json | 12 --- .../app/src/test/resources/tutorial-policies.yaml | 34 ------ .../src/test/resources/tutorial-policy-type.yaml | 32 ------ .../app/src/test/resources/xacml.properties | 31 ------ 5 files changed, 229 deletions(-) delete mode 100644 docs/xacml/tutorial/app/src/test/java/org/onap/policy/tutorial/tutorial/TutorialApplicationTest.java delete mode 100644 docs/xacml/tutorial/app/src/test/resources/tutorial-decision-request.json delete mode 100644 docs/xacml/tutorial/app/src/test/resources/tutorial-policies.yaml delete mode 100644 docs/xacml/tutorial/app/src/test/resources/tutorial-policy-type.yaml delete mode 100644 docs/xacml/tutorial/app/src/test/resources/xacml.properties (limited to 'docs/xacml/tutorial/app/src/test') diff --git a/docs/xacml/tutorial/app/src/test/java/org/onap/policy/tutorial/tutorial/TutorialApplicationTest.java b/docs/xacml/tutorial/app/src/test/java/org/onap/policy/tutorial/tutorial/TutorialApplicationTest.java deleted file mode 100644 index d20c1b38..00000000 --- a/docs/xacml/tutorial/app/src/test/java/org/onap/policy/tutorial/tutorial/TutorialApplicationTest.java +++ /dev/null @@ -1,120 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * Copyright (C) 2020 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.onap.policy.tutorial.tutorial; - -import static org.junit.Assert.assertEquals; - -import java.io.File; -import java.io.IOException; -import java.util.Iterator; -import java.util.Properties; -import java.util.ServiceLoader; - -import org.apache.commons.lang3.tuple.Pair; -import org.junit.BeforeClass; -import org.junit.ClassRule; -import org.junit.Test; -import org.junit.rules.TemporaryFolder; -import org.onap.policy.common.endpoints.parameters.RestServerParameters; -import org.onap.policy.common.utils.coder.CoderException; -import org.onap.policy.common.utils.coder.StandardCoder; -import org.onap.policy.common.utils.resources.TextFileUtils; -import org.onap.policy.models.decisions.concepts.DecisionRequest; -import org.onap.policy.models.decisions.concepts.DecisionResponse; -import org.onap.policy.pdp.xacml.application.common.XacmlApplicationException; -import org.onap.policy.pdp.xacml.application.common.XacmlApplicationServiceProvider; -import org.onap.policy.pdp.xacml.application.common.XacmlPolicyUtils; -import org.onap.policy.pdp.xacml.xacmltest.TestUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import com.att.research.xacml.api.Response; - -public class TutorialApplicationTest { - private static final Logger LOGGER = LoggerFactory.getLogger(TutorialApplicationTest.class); - private static Properties properties = new Properties(); - private static File propertiesFile; - private static XacmlApplicationServiceProvider service; - private static StandardCoder gson = new StandardCoder(); - - @ClassRule - public static final TemporaryFolder policyFolder = new TemporaryFolder(); - - @BeforeClass - public static void setup() throws Exception { - // - // Setup our temporary folder - // - XacmlPolicyUtils.FileCreator myCreator = (String filename) -> policyFolder.newFile(filename); - propertiesFile = XacmlPolicyUtils.copyXacmlPropertiesContents("src/test/resources/xacml.properties", - properties, myCreator); - // - // Load XacmlApplicationServiceProvider service - // - ServiceLoader applicationLoader = - ServiceLoader.load(XacmlApplicationServiceProvider.class); - // - // Look for our class instance and save it - // - Iterator iterator = applicationLoader.iterator(); - while (iterator.hasNext()) { - XacmlApplicationServiceProvider application = iterator.next(); - // - // Is it our service? - // - if (application instanceof TutorialApplication) { - service = application; - } - } - // - // Tell the application to initialize based on the properties file - // we just built for it. - // - service.initialize(propertiesFile.toPath().getParent(), new RestServerParameters()); - } - - @Test - public void test() throws CoderException, XacmlApplicationException, IOException { - // - // Now load the tutorial policies. - // - TestUtils.loadPolicies("src/test/resources/tutorial-policies.yaml", service); - // - // Load a Decision request - // - DecisionRequest decisionRequest = gson.decode( - TextFileUtils - .getTextFileAsString("src/test/resources/tutorial-decision-request.json"), - DecisionRequest.class); - // - // Test a decision - should start with a permit - // - Pair decision = service.makeDecision(decisionRequest, null); - LOGGER.info(decision.getLeft().toString()); - assertEquals("Permit", decision.getLeft().getStatus()); - // - // This should be a deny - // - decisionRequest.getResource().put("user", "audit"); - decision = service.makeDecision(decisionRequest, null); - LOGGER.info(decision.getLeft().toString()); - assertEquals("Deny", decision.getLeft().getStatus()); - } - -} diff --git a/docs/xacml/tutorial/app/src/test/resources/tutorial-decision-request.json b/docs/xacml/tutorial/app/src/test/resources/tutorial-decision-request.json deleted file mode 100644 index f3a7f9a2..00000000 --- a/docs/xacml/tutorial/app/src/test/resources/tutorial-decision-request.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "ONAPName": "TutorialPEP", - "ONAPComponent": "TutorialPEPComponent", - "ONAPInstance": "TutorialPEPInstance", - "requestId": "unique-request-id-tutorial", - "action": "authorize", - "resource": { - "user": "demo", - "entity": "foo", - "permission" : "write" - } -} diff --git a/docs/xacml/tutorial/app/src/test/resources/tutorial-policies.yaml b/docs/xacml/tutorial/app/src/test/resources/tutorial-policies.yaml deleted file mode 100644 index fa353653..00000000 --- a/docs/xacml/tutorial/app/src/test/resources/tutorial-policies.yaml +++ /dev/null @@ -1,34 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_1_0 -topology_template: - policies: - - - onap.policy.tutorial.demo: - type: onap.policies.Authorization - type_version: 1.0.0 - version: 1.0.0 - metadata: - policy-id: onap.policy.tutorial.demo - policy-version: 1 - properties: - user: demo - permissions: - - - entity: foo - permission: read - - - entity: foo - permission: write - - - onap.policy.tutorial.audit: - type: onap.policies.Authorization - version: 1.0.0 - type_version: 1.0.0 - metadata: - policy-id: onap.policy.tutorial.bar - policy-version: 1 - properties: - user: audit - permissions: - - - entity: foo - permission: read diff --git a/docs/xacml/tutorial/app/src/test/resources/tutorial-policy-type.yaml b/docs/xacml/tutorial/app/src/test/resources/tutorial-policy-type.yaml deleted file mode 100644 index 7948bd28..00000000 --- a/docs/xacml/tutorial/app/src/test/resources/tutorial-policy-type.yaml +++ /dev/null @@ -1,32 +0,0 @@ -tosca_definitions_version: tosca_simple_yaml_1_1_0 -policy_types: - onap.policies.Authorization: - derived_from: tosca.policies.Root - version: 1.0.0 - description: Example tutorial policy type for doing user authorization - properties: - user: - type: string - required: true - description: The unique user name - permissions: - type: list - required: true - description: A list of resource permissions - entry_schema: - type: onap.datatypes.Tutorial -data_types: - onap.datatypes.Tutorial: - derived_from: tosca.datatypes.Root - version: 1.0.0 - properties: - entity: - type: string - required: true - description: The resource - permission: - type: string - required: true - description: The permission level - constraints: - - valid_values: [read, write, delete] diff --git a/docs/xacml/tutorial/app/src/test/resources/xacml.properties b/docs/xacml/tutorial/app/src/test/resources/xacml.properties deleted file mode 100644 index 277b098e..00000000 --- a/docs/xacml/tutorial/app/src/test/resources/xacml.properties +++ /dev/null @@ -1,31 +0,0 @@ -# -# Properties that the embedded PDP engine uses to configure and load -# -# Standard API Factories -# -xacml.dataTypeFactory=com.att.research.xacml.std.StdDataTypeFactory -xacml.pdpEngineFactory=com.att.research.xacmlatt.pdp.ATTPDPEngineFactory -xacml.pepEngineFactory=com.att.research.xacml.std.pep.StdEngineFactory -xacml.pipFinderFactory=com.att.research.xacml.std.pip.StdPIPFinderFactory -xacml.traceEngineFactory=com.att.research.xacml.std.trace.LoggingTraceEngineFactory -# -# AT&T PDP Implementation Factories -# -xacml.att.evaluationContextFactory=com.att.research.xacmlatt.pdp.std.StdEvaluationContextFactory -xacml.att.combiningAlgorithmFactory=com.att.research.xacmlatt.pdp.std.StdCombiningAlgorithmFactory -xacml.att.functionDefinitionFactory=com.att.research.xacmlatt.pdp.std.StdFunctionDefinitionFactory -# -# ONAP PDP Implementation Factories -# -xacml.att.policyFinderFactory=org.onap.policy.pdp.xacml.application.common.OnapPolicyFinderFactory - -# -# Use a root combining algorithm -# -xacml.att.policyFinderFactory.combineRootPolicies=urn:oasis:names:tc:xacml:3.0:policy-combining-algorithm:deny-overrides - -# -# Policies to load -# -xacml.rootPolicies= -xacml.referencedPolicies= \ No newline at end of file -- cgit 1.2.3-korg