Update XACML Tutorial
[policy/parent.git] / docs / xacml / tutorial / PolicyApplicationTutorial.postman_collection.json
diff --git a/docs/xacml/tutorial/PolicyApplicationTutorial.postman_collection.json b/docs/xacml/tutorial/PolicyApplicationTutorial.postman_collection.json
new file mode 100644 (file)
index 0000000..23aa0eb
--- /dev/null
@@ -0,0 +1,723 @@
+{
+       "info": {
+               "_postman_id": "20eb42db-f0a7-4b65-8ccd-c3a5f56cb526",
+               "name": "Policy Application Tutorial",
+               "description": "Collection of Postman API calls to support the Policy Enforcement Tutorial",
+               "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
+       },
+       "item": [
+               {
+                       "name": "Api Healthcheck",
+                       "request": {
+                               "auth": {
+                                       "type": "basic",
+                                       "basic": [
+                                               {
+                                                       "key": "password",
+                                                       "value": "zb!XztG34",
+                                                       "type": "string"
+                                               },
+                                               {
+                                                       "key": "username",
+                                                       "value": "healthcheck",
+                                                       "type": "string"
+                                               }
+                                       ]
+                               },
+                               "method": "GET",
+                               "header": [
+                                       {
+                                               "key": "Content-Type",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       },
+                                       {
+                                               "key": "Accept",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       }
+                               ],
+                               "url": {
+                                       "raw": "{{POLICY-API-URL}}/policy/api/v1/healthcheck",
+                                       "host": [
+                                               "{{POLICY-API-URL}}"
+                                       ],
+                                       "path": [
+                                               "policy",
+                                               "api",
+                                               "v1",
+                                               "healthcheck"
+                                       ]
+                               }
+                       },
+                       "response": []
+               },
+               {
+                       "name": "Create Authorization Policy Type",
+                       "request": {
+                               "auth": {
+                                       "type": "basic",
+                                       "basic": [
+                                               {
+                                                       "key": "password",
+                                                       "value": "zb!XztG34",
+                                                       "type": "string"
+                                               },
+                                               {
+                                                       "key": "username",
+                                                       "value": "healthcheck",
+                                                       "type": "string"
+                                               }
+                                       ]
+                               },
+                               "method": "POST",
+                               "header": [
+                                       {
+                                               "key": "Accept",
+                                               "type": "text",
+                                               "value": "application/yaml"
+                                       },
+                                       {
+                                               "key": "Content-Type",
+                                               "type": "text",
+                                               "value": "application/yaml"
+                                       }
+                               ],
+                               "body": {
+                                       "mode": "raw",
+                                       "raw": "tosca_definitions_version: tosca_simple_yaml_1_1_0\npolicy_types:\n    onap.policies.Authorization:\n        derived_from: tosca.policies.Root\n        version: 1.0.0\n        description: Example tutorial policy type for doing user authorization\n        properties:\n            user:\n                type: string\n                required: true\n                description: The unique user name\n            permissions:\n                type: list\n                required: true\n                description: A list of resource permissions\n                entry_schema:\n                    type: onap.datatypes.Tutorial\ndata_types:\n    onap.datatypes.Tutorial:\n        derived_from: tosca.datatypes.Root\n        version: 1.0.0\n        properties:\n            entity:\n                type: string\n                required: true\n                description: The resource\n            permission:\n                type: string\n                required: true\n                description: The permission level\n                constraints:\n                    - valid_values: [read, write, delete]\n",
+                                       "options": {
+                                               "raw": {
+                                                       "language": "text"
+                                               }
+                                       }
+                               },
+                               "url": {
+                                       "raw": "{{POLICY-API-URL}}/policy/api/v1/policytypes",
+                                       "host": [
+                                               "{{POLICY-API-URL}}"
+                                       ],
+                                       "path": [
+                                               "policy",
+                                               "api",
+                                               "v1",
+                                               "policytypes"
+                                       ]
+                               }
+                       },
+                       "response": []
+               },
+               {
+                       "name": "Create policies",
+                       "request": {
+                               "auth": {
+                                       "type": "basic",
+                                       "basic": [
+                                               {
+                                                       "key": "password",
+                                                       "value": "zb!XztG34",
+                                                       "type": "string"
+                                               },
+                                               {
+                                                       "key": "username",
+                                                       "value": "healthcheck",
+                                                       "type": "string"
+                                               }
+                                       ]
+                               },
+                               "method": "POST",
+                               "header": [
+                                       {
+                                               "key": "Accept",
+                                               "type": "text",
+                                               "value": "application/yaml"
+                                       },
+                                       {
+                                               "key": "Content-Type",
+                                               "type": "text",
+                                               "value": "application/yaml"
+                                       }
+                               ],
+                               "body": {
+                                       "mode": "raw",
+                                       "raw": "tosca_definitions_version: tosca_simple_yaml_1_1_0\ntopology_template:\n    policies:\n        -\n            onap.policy.tutorial.demo:\n                type: onap.policies.Authorization\n                type_version: 1.0.0\n                version: 1.0.0\n                metadata:\n                    policy-id: onap.policy.tutorial.demo\n                    policy-version: 1\n                properties:\n                    user: demo\n                    permissions:\n                        -\n                            entity: foo\n                            permission: read\n                        -\n                            entity: foo\n                            permission: write\n        -\n            onap.policy.tutorial.audit:\n                type: onap.policies.Authorization\n                version: 1.0.0\n                type_version: 1.0.0\n                metadata:\n                    policy-id: onap.policy.tutorial.bar\n                    policy-version: 1\n                properties:\n                    user: audit\n                    permissions:\n                        -\n                            entity: foo\n                            permission: read\n",
+                                       "options": {
+                                               "raw": {
+                                                       "language": "text"
+                                               }
+                                       }
+                               },
+                               "url": {
+                                       "raw": "{{POLICY-API-URL}}/policy/api/v1/policytypes/onap.policies.Authorization/versions/1.0.0/policies",
+                                       "host": [
+                                               "{{POLICY-API-URL}}"
+                                       ],
+                                       "path": [
+                                               "policy",
+                                               "api",
+                                               "v1",
+                                               "policytypes",
+                                               "onap.policies.Authorization",
+                                               "versions",
+                                               "1.0.0",
+                                               "policies"
+                                       ]
+                               }
+                       },
+                       "response": []
+               },
+               {
+                       "name": "PAP Healthcheck",
+                       "request": {
+                               "auth": {
+                                       "type": "basic",
+                                       "basic": [
+                                               {
+                                                       "key": "password",
+                                                       "value": "zb!XztG34",
+                                                       "type": "string"
+                                               },
+                                               {
+                                                       "key": "username",
+                                                       "value": "healthcheck",
+                                                       "type": "string"
+                                               }
+                                       ]
+                               },
+                               "method": "GET",
+                               "header": [
+                                       {
+                                               "key": "Content-Type",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       },
+                                       {
+                                               "key": "Accept",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       }
+                               ],
+                               "url": {
+                                       "raw": "{{POLICY-PAP-URL}}/policy/pap/v1/healthcheck",
+                                       "host": [
+                                               "{{POLICY-PAP-URL}}"
+                                       ],
+                                       "path": [
+                                               "policy",
+                                               "pap",
+                                               "v1",
+                                               "healthcheck"
+                                       ]
+                               }
+                       },
+                       "response": []
+               },
+               {
+                       "name": "PAP Get PDPs",
+                       "request": {
+                               "auth": {
+                                       "type": "basic",
+                                       "basic": [
+                                               {
+                                                       "key": "password",
+                                                       "value": "zb!XztG34",
+                                                       "type": "string"
+                                               },
+                                               {
+                                                       "key": "username",
+                                                       "value": "healthcheck",
+                                                       "type": "string"
+                                               }
+                                       ]
+                               },
+                               "method": "GET",
+                               "header": [
+                                       {
+                                               "key": "Accept",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       },
+                                       {
+                                               "key": "Content-Type",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       }
+                               ],
+                               "url": {
+                                       "raw": "{{POLICY-PAP-URL}}/policy/pap/v1/pdps",
+                                       "host": [
+                                               "{{POLICY-PAP-URL}}"
+                                       ],
+                                       "path": [
+                                               "policy",
+                                               "pap",
+                                               "v1",
+                                               "pdps"
+                                       ]
+                               }
+                       },
+                       "response": []
+               },
+               {
+                       "name": "PdpGroup State Change PASSIVE",
+                       "request": {
+                               "auth": {
+                                       "type": "basic",
+                                       "basic": [
+                                               {
+                                                       "key": "password",
+                                                       "value": "zb!XztG34",
+                                                       "type": "string"
+                                               },
+                                               {
+                                                       "key": "username",
+                                                       "value": "healthcheck",
+                                                       "type": "string"
+                                               }
+                                       ]
+                               },
+                               "method": "PUT",
+                               "header": [
+                                       {
+                                               "key": "Content-Type",
+                                               "value": "application/json",
+                                               "type": "text"
+                                       },
+                                       {
+                                               "key": "Accept",
+                                               "value": "application/json",
+                                               "type": "text"
+                                       }
+                               ],
+                               "url": {
+                                       "raw": "{{POLICY-PAP-URL}}/policy/pap/v1/pdps/groups/defaultGroup?state=PASSIVE",
+                                       "host": [
+                                               "{{POLICY-PAP-URL}}"
+                                       ],
+                                       "path": [
+                                               "policy",
+                                               "pap",
+                                               "v1",
+                                               "pdps",
+                                               "groups",
+                                               "defaultGroup"
+                                       ],
+                                       "query": [
+                                               {
+                                                       "key": "state",
+                                                       "value": "PASSIVE"
+                                               }
+                                       ]
+                               },
+                               "description": "This is an API to change the current state of a PdpGroup (example - \"defaultGroup\") resulting in changing state of all the PDP instances registered with the PdpGroup. As of now, the allowed states are ACTIVE and PASSIVE."
+                       },
+                       "response": []
+               },
+               {
+                       "name": "Delete PdpGroup",
+                       "request": {
+                               "auth": {
+                                       "type": "basic",
+                                       "basic": [
+                                               {
+                                                       "key": "password",
+                                                       "value": "zb!XztG34",
+                                                       "type": "string"
+                                               },
+                                               {
+                                                       "key": "username",
+                                                       "value": "healthcheck",
+                                                       "type": "string"
+                                               }
+                                       ]
+                               },
+                               "method": "DELETE",
+                               "header": [
+                                       {
+                                               "key": "Accept",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       },
+                                       {
+                                               "key": "Content-Type",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       }
+                               ],
+                               "url": {
+                                       "raw": "{{POLICY-PAP-URL}}/policy/pap/v1/pdps/groups/defaultGroup",
+                                       "host": [
+                                               "{{POLICY-PAP-URL}}"
+                                       ],
+                                       "path": [
+                                               "policy",
+                                               "pap",
+                                               "v1",
+                                               "pdps",
+                                               "groups",
+                                               "defaultGroup"
+                                       ]
+                               },
+                               "description": "This is an API to delete a specific PdpGroup (example - \"SampleGroup\") currently available in Policy DB, resulting in removing all the PDP instances registered with the group."
+                       },
+                       "response": []
+               },
+               {
+                       "name": "Create/Update PdpGroup",
+                       "request": {
+                               "auth": {
+                                       "type": "basic",
+                                       "basic": [
+                                               {
+                                                       "key": "password",
+                                                       "value": "zb!XztG34",
+                                                       "type": "string"
+                                               },
+                                               {
+                                                       "key": "username",
+                                                       "value": "healthcheck",
+                                                       "type": "string"
+                                               }
+                                       ]
+                               },
+                               "method": "POST",
+                               "header": [
+                                       {
+                                               "key": "Content-Type",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       },
+                                       {
+                                               "key": "Accept",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       }
+                               ],
+                               "body": {
+                                       "mode": "raw",
+                                       "raw": "{\n    \"groups\": [\n        {\n            \"name\": \"defaultGroup\",\n            \"pdpGroupState\": \"ACTIVE\",\n            \"properties\": {},\n            \"pdpSubgroups\": [\n                {\n                    \"pdpType\": \"xacml\",\n                    \"desiredInstanceCount\": 1,\n                    \"properties\": {},\n                    \"supportedPolicyTypes\": [\n                        {\n                            \"name\": \"onap.policies.Authorization\",\n                            \"version\": \"1.0.0\"\n                        }\n                    ],\n                    \"policies\": []\n                }\n            ]\n        }\n    ]\n}"
+                               },
+                               "url": {
+                                       "raw": "{{POLICY-PAP-URL}}/policy/pap/v1/pdps/groups/batch",
+                                       "host": [
+                                               "{{POLICY-PAP-URL}}"
+                                       ],
+                                       "path": [
+                                               "policy",
+                                               "pap",
+                                               "v1",
+                                               "pdps",
+                                               "groups",
+                                               "batch"
+                                       ]
+                               },
+                               "description": "This is a generic API to create/update PdpGroups in Policy DB. However, the supportedPolicyTypes field of PdpSubGroup cannot be changed once created."
+                       },
+                       "response": []
+               },
+               {
+                       "name": "Simple Deploy Policy - onap.policy.tutorial.demo",
+                       "request": {
+                               "auth": {
+                                       "type": "basic",
+                                       "basic": [
+                                               {
+                                                       "key": "password",
+                                                       "value": "zb!XztG34",
+                                                       "type": "string"
+                                               },
+                                               {
+                                                       "key": "username",
+                                                       "value": "healthcheck",
+                                                       "type": "string"
+                                               }
+                                       ]
+                               },
+                               "method": "POST",
+                               "header": [
+                                       {
+                                               "key": "Content-Type",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       },
+                                       {
+                                               "key": "Accept",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       }
+                               ],
+                               "body": {
+                                       "mode": "raw",
+                                       "raw": "{\r\n  \"policies\" : [\r\n    {\r\n      \"policy-id\": \"onap.policy.tutorial.demo\",\r\n      \"policy-version\": \"1.0.0\"\r\n    },\r\n    {\r\n      \"policy-id\": \"onap.policy.tutorial.audit\",\r\n      \"policy-version\": \"1.0.0\"\r\n    }\r\n    ]\r\n}"
+                               },
+                               "url": {
+                                       "raw": "{{POLICY-PAP-URL}}/policy/pap/v1/pdps/policies",
+                                       "host": [
+                                               "{{POLICY-PAP-URL}}"
+                                       ],
+                                       "path": [
+                                               "policy",
+                                               "pap",
+                                               "v1",
+                                               "pdps",
+                                               "policies"
+                                       ]
+                               }
+                       },
+                       "response": []
+               },
+               {
+                       "name": "Dmaap Simulator - Policy Update Notification",
+                       "protocolProfileBehavior": {
+                               "disableBodyPruning": true
+                       },
+                       "request": {
+                               "auth": {
+                                       "type": "noauth"
+                               },
+                               "method": "GET",
+                               "header": [
+                                       {
+                                               "key": "Content-Type",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       },
+                                       {
+                                               "key": "Accept",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       }
+                               ],
+                               "body": {
+                                       "mode": "raw",
+                                       "raw": ""
+                               },
+                               "url": {
+                                       "raw": "{{DMAAP-URL}}/events/POLICY-NOTIFICATION/group/id?timeout=5000",
+                                       "host": [
+                                               "{{DMAAP-URL}}"
+                                       ],
+                                       "path": [
+                                               "events",
+                                               "POLICY-NOTIFICATION",
+                                               "group",
+                                               "id"
+                                       ],
+                                       "query": [
+                                               {
+                                                       "key": "timeout",
+                                                       "value": "5000"
+                                               }
+                                       ]
+                               }
+                       },
+                       "response": []
+               },
+               {
+                       "name": "Xacml Healthcheck",
+                       "request": {
+                               "auth": {
+                                       "type": "basic",
+                                       "basic": [
+                                               {
+                                                       "key": "password",
+                                                       "value": "zb!XztG34",
+                                                       "type": "string"
+                                               },
+                                               {
+                                                       "key": "username",
+                                                       "value": "healthcheck",
+                                                       "type": "string"
+                                               }
+                                       ]
+                               },
+                               "method": "GET",
+                               "header": [
+                                       {
+                                               "key": "Content-Type",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       },
+                                       {
+                                               "key": "Accept",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       }
+                               ],
+                               "url": {
+                                       "raw": "{{POLICY-XACML-URL}}/policy/pdpx/v1/healthcheck",
+                                       "host": [
+                                               "{{POLICY-XACML-URL}}"
+                                       ],
+                                       "path": [
+                                               "policy",
+                                               "pdpx",
+                                               "v1",
+                                               "healthcheck"
+                                       ]
+                               }
+                       },
+                       "response": []
+               },
+               {
+                       "name": "Xacml Statistics",
+                       "request": {
+                               "auth": {
+                                       "type": "basic",
+                                       "basic": [
+                                               {
+                                                       "key": "password",
+                                                       "value": "zb!XztG34",
+                                                       "type": "string"
+                                               },
+                                               {
+                                                       "key": "username",
+                                                       "value": "healthcheck",
+                                                       "type": "string"
+                                               }
+                                       ]
+                               },
+                               "method": "GET",
+                               "header": [
+                                       {
+                                               "key": "Content-Type",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       },
+                                       {
+                                               "key": "Accept",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       }
+                               ],
+                               "url": {
+                                       "raw": "{{POLICY-XACML-URL}}/policy/pdpx/v1/statistics",
+                                       "host": [
+                                               "{{POLICY-XACML-URL}}"
+                                       ],
+                                       "path": [
+                                               "policy",
+                                               "pdpx",
+                                               "v1",
+                                               "statistics"
+                                       ]
+                               }
+                       },
+                       "response": []
+               },
+               {
+                       "name": "Xacml Decision - Authorization policy-type",
+                       "request": {
+                               "auth": {
+                                       "type": "basic",
+                                       "basic": [
+                                               {
+                                                       "key": "password",
+                                                       "value": "zb!XztG34",
+                                                       "type": "string"
+                                               },
+                                               {
+                                                       "key": "username",
+                                                       "value": "healthcheck",
+                                                       "type": "string"
+                                               }
+                                       ]
+                               },
+                               "method": "POST",
+                               "header": [
+                                       {
+                                               "key": "Content-Type",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       },
+                                       {
+                                               "key": "Accept",
+                                               "type": "text",
+                                               "value": "application/json"
+                                       }
+                               ],
+                               "body": {
+                                       "mode": "raw",
+                                       "raw": "{\n  \"ONAPName\": \"TutorialPEP\",\n  \"ONAPComponent\": \"TutorialPEPComponent\",\n  \"ONAPInstance\": \"TutorialPEPInstance\",\n  \"requestId\": \"unique-request-id-tutorial\",\n  \"action\": \"authorize\",\n  \"resource\": {\n    \"user\": \"audit\",\n    \"entity\": \"foo\",\n    \"permission\" : \"read\"\n  }\n}"
+                               },
+                               "url": {
+                                       "raw": "{{POLICY-XACML-URL}}/policy/pdpx/v1/decision",
+                                       "host": [
+                                               "{{POLICY-XACML-URL}}"
+                                       ],
+                                       "path": [
+                                               "policy",
+                                               "pdpx",
+                                               "v1",
+                                               "decision"
+                                       ]
+                               }
+                       },
+                       "response": []
+               },
+               {
+                       "name": "Simple Undeploy Policy",
+                       "request": {
+                               "auth": {
+                                       "type": "basic",
+                                       "basic": [
+                                               {
+                                                       "key": "password",
+                                                       "value": "zb!XztG34",
+                                                       "type": "string"
+                                               },
+                                               {
+                                                       "key": "username",
+                                                       "value": "healthcheck",
+                                                       "type": "string"
+                                               }
+                                       ]
+                               },
+                               "method": "DELETE",
+                               "header": [
+                                       {
+                                               "key": "Accept",
+                                               "value": "application/json",
+                                               "type": "text"
+                                       },
+                                       {
+                                               "key": "Content-Type",
+                                               "value": "application/json",
+                                               "type": "text"
+                                       }
+                               ],
+                               "url": {
+                                       "raw": "{{POLICY-PAP-URL}}/policy/pap/v1/pdps/policies/onap.policy.tutorial.demo",
+                                       "host": [
+                                               "{{POLICY-PAP-URL}}"
+                                       ],
+                                       "path": [
+                                               "policy",
+                                               "pap",
+                                               "v1",
+                                               "pdps",
+                                               "policies",
+                                               "onap.policy.tutorial.demo"
+                                       ]
+                               }
+                       },
+                       "response": []
+               }
+       ],
+       "auth": {
+               "type": "basic",
+               "basic": [
+                       {
+                               "key": "password",
+                               "value": "",
+                               "type": "string"
+                       },
+                       {
+                               "key": "username",
+                               "value": "",
+                               "type": "string"
+                       }
+               ]
+       },
+       "protocolProfileBehavior": {}
+}
\ No newline at end of file