authzforce issueshttps://gitlab.ow2.org/groups/authzforce/-/issues2022-09-17T21:42:48Zhttps://gitlab.ow2.org/authzforce/java-xacml-sdk/-/issues/2PDP Samples in authzforce-xacmlsdk-samples throw IllegalArgumentException2022-09-17T21:42:48ZTom McLaughlinPDP Samples in authzforce-xacmlsdk-samples throw IllegalArgumentExceptionOn my machines, `org.ow2.authzforce.sdk.pdp.SimpleAuthorizationRequest.main` fails to run to completion (exception below).
I created https://github.com/authzforce/java-xacml-sdk/pull/34 which fixes the issue. If github isn't the right o...On my machines, `org.ow2.authzforce.sdk.pdp.SimpleAuthorizationRequest.main` fails to run to completion (exception below).
I created https://github.com/authzforce/java-xacml-sdk/pull/34 which fixes the issue. If github isn't the right origin for my PR, I can do it over here in gitlab.
```
Exception in thread "main" org.ow2.authzforce.sdk.exceptions.XacmlSdkException: javax.ws.rs.ProcessingException: java.lang.IllegalArgumentException: IllegalArgumentException invoking http:authzforce-ce: protocol = http host = null
at org.ow2.authzforce.sdk.impl.AdminXacmlSdkImpl.addDomain(AdminXacmlSdkImpl.java:74)
at org.ow2.authzforce.sdk.utils.PapService.setupBasicDomain(PapService.java:15)
at org.ow2.authzforce.sdk.pdp.SimpleAuthorizationRequest.main(SimpleAuthorizationRequest.java:42)
Caused by: javax.ws.rs.ProcessingException: java.lang.IllegalArgumentException: IllegalArgumentException invoking http:authzforce-ce: protocol = http host = null
at org.apache.cxf.jaxrs.client.AbstractClient.checkClientException(AbstractClient.java:557)
at org.apache.cxf.jaxrs.client.AbstractClient.preProcessResult(AbstractClient.java:539)
at org.apache.cxf.jaxrs.client.ClientProxyImpl.doChainedInvocation(ClientProxyImpl.java:690)
at org.apache.cxf.jaxrs.client.ClientProxyImpl.invoke(ClientProxyImpl.java:227)
at com.sun.proxy.$Proxy30.addDomain(Unknown Source)
at org.ow2.authzforce.sdk.impl.AdminXacmlSdkImpl.addDomain(AdminXacmlSdkImpl.java:67)
... 2 more
Caused by: java.lang.IllegalArgumentException: IllegalArgumentException invoking http:authzforce-ce: protocol = http host = null
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.mapException(HTTPConduit.java:1365)
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1354)
at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:56)
at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:215)
at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:652)
at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
at org.apache.cxf.jaxrs.client.AbstractClient.doRunInterceptorChain(AbstractClient.java:624)
at org.apache.cxf.jaxrs.client.ClientProxyImpl.doChainedInvocation(ClientProxyImpl.java:688)
... 5 more
Caused by: java.lang.IllegalArgumentException: protocol = http host = null
at sun.net.spi.DefaultProxySelector.select(DefaultProxySelector.java:177)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1156)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1056)
at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:990)
at sun.net.www.protocol.http.HttpURLConnection.getOutputStream0(HttpURLConnection.java:1340)
at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1315)
at org.apache.cxf.transport.http.URLConnectionHTTPConduit$URLConnectionWrappedOutputStream.setupWrappedStream(URLConnectionHTTPConduit.java:183)
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleHeadersTrustCaching(HTTPConduit.java:1308)
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.onFirstWrite(HTTPConduit.java:1268)
at org.apache.cxf.transport.http.URLConnectionHTTPConduit$URLConnectionWrappedOutputStream.onFirstWrite(URLConnectionHTTPConduit.java:210)
at org.apache.cxf.io.AbstractWrappedOutputStream.write(AbstractWrappedOutputStream.java:47)
at org.apache.cxf.io.AbstractThresholdOutputStream.write(AbstractThresholdOutputStream.java:69)
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1321)
... 13 more
```https://gitlab.ow2.org/authzforce/core-pdp-api/-/issues/1Core PDP implementation in GO2020-07-06T07:48:49ZSHEERAZ JUNEJOCore PDP implementation in GOI am currently using java implementation of PDP. I am porting my apps to GO and looking for a solution. Is there a roadmap for PDP to be developed in GO?
All other implementations are either [close-to-standard](https://github.com/infob...I am currently using java implementation of PDP. I am porting my apps to GO and looking for a solution. Is there a roadmap for PDP to be developed in GO?
All other implementations are either [close-to-standard](https://github.com/infobloxopen/themis) or [non-standard](https://github.com/casbin/casbin)https://gitlab.ow2.org/authzforce/core/-/issues/3Maven archetype for custom policy provider2020-07-06T07:56:47ZCyril DangervilleMaven archetype for custom policy providerCyril DangervilleCyril Dangervillehttps://gitlab.ow2.org/authzforce/core/-/issues/2Maven archetype for custom attribute provider2020-07-06T07:56:30ZCyril DangervilleMaven archetype for custom attribute providerCyril DangervilleCyril Dangervillehttps://gitlab.ow2.org/authzforce/python-xacml-sdk/-/issues/1Generate the XACML Request from a template2020-07-06T08:00:55ZCyril DangervilleGenerate the XACML Request from a template*Created by: cdanger*
The idea is to use XACML request template to generate the actual XACML request to PDP at runtime. For each access request, the variables used in the template (e.g. user ID, user roles, action ID, resource ID) are r...*Created by: cdanger*
The idea is to use XACML request template to generate the actual XACML request to PDP at runtime. For each access request, the variables used in the template (e.g. user ID, user roles, action ID, resource ID) are resolved at runtime in the context of the request.
For this, you can use one of many Python template engines listed here for instance:
https://wiki.python.org/moin/Templating
For example, if you want the SDK to send XACML/JSON requests, using Jinja template engine, the app developer/admin would provide a XACML request template file looking like this:
```json
{
"Request":
{
"Category":
[
{
"CategoryId":
"urn:oasis:names:tc:xacml:1.0:subject-category:access-subject",
"Attribute":
[
{
"AttributeId": "urn:oasis:names:tc:xacml:1.0:subject:subject-id",
"Value": "{{ user_id }}"
}
{% if user_roles %}
,
{
"AttributeId": "urn:oasis:names:tc:xacml:2.0:subject:role",
"Value":
[
{% for role in user_roles %}
"{{ role }}"
{% if not loop.last %}
,
{% endif %}
{% endfor %}
]
}
{% endif %}
]
},
{
"CategoryId":
"urn:oasis:names:tc:xacml:3.0:attribute-category:action",
"Attribute":
[
{
"AttributeId": "urn:oasis:names:tc:xacml:1.0:action:action-id",
"Value": "{{ method_name }}",
}
]
},
{
"CategoryId":
"urn:oasis:names:tc:xacml:3.0:attribute-category:resource",
"Attribute":
[
{
"AttributeId":
"urn:oasis:names:tc:xacml:1.0:resource:resource-id",
"Value": "{{ url }}"
}
]
}
]
}
}
```
When using the SDK API, the developer just needs to call a method `template.render( [variables] )`, the variables being variables etant dans un dict (user_id = "trucmuche", method_name = "prout", ...)
https://github.com/authzforce/xacml-json-model/blob/develop/src/test/resources/xacml.samples/Requests/valid/spec-8.1-request-example-fixed.json
More examples:
http://sasheldon.com/blog/2013/12/14/simplifying-json-response-mocks-with-jinja/https://gitlab.ow2.org/authzforce/server/-/issues/2Publish maven site documentation to GitHub Pages2020-07-06T08:01:47ZCyril DangervillePublish maven site documentation to GitHub PagesAs the title says, using tips from:
http://blog.rseiler.at/2015/02/publish-maven-site-documentation.htmlAs the title says, using tips from:
http://blog.rseiler.at/2015/02/publish-maven-site-documentation.htmlhttps://gitlab.ow2.org/authzforce/core/-/issues/1Multiple Decision Profile2020-07-06T07:55:43ZPascal JakobiMultiple Decision ProfileImplemented section 2.3Implemented section 2.3https://gitlab.ow2.org/authzforce/server/-/issues/1Policy Editor2020-07-06T08:01:21ZPascal JakobiPolicy Editor