1
1
package com .github .joffryferrater .pep .security ;
2
2
3
+ import com .fasterxml .jackson .databind .ObjectMapper ;
3
4
import com .github .joffryferrater .pep .client .PdpClient ;
4
5
import com .github .joffryferrater .request .AccessSubjectCategory ;
5
6
import com .github .joffryferrater .request .ActionCategory ;
@@ -45,7 +46,11 @@ public boolean hasAccessToResource(String attributeId, List<Object> values) {
45
46
LOGGER .debug ("Entering hasAccessToResource(attributeId={},values={}" , attributeId , values );
46
47
final Request request = getAllCategoriesRequest (attributeId , values );
47
48
try {
48
- final Response pdpResponse = pdpClient .sendXacmlJsonRequest (new XacmlRequest (request ));
49
+ final XacmlRequest xacmlRequest = new XacmlRequest (request );
50
+ ObjectMapper objectMapper = new ObjectMapper ();
51
+ final String valueAsString = objectMapper .writeValueAsString (xacmlRequest );
52
+ LOGGER .debug (valueAsString );
53
+ final Response pdpResponse = pdpClient .sendXacmlJsonRequest (xacmlRequest );
49
54
return isPermitted (pdpResponse );
50
55
} catch (IOException e ) {
51
56
LOGGER .error (e .getMessage ());
@@ -54,19 +59,19 @@ public boolean hasAccessToResource(String attributeId, List<Object> values) {
54
59
}
55
60
56
61
private Request getAllCategoriesRequest (String attributeId , List <Object > values ) {
57
- ResourceCategory resourceCategory = createResourceCategoryRequest (attributeId , values );
58
62
Request request = new Request ();
63
+ ResourceCategory resourceCategory = createResourceCategoryRequest (attributeId , values );
59
64
List <ResourceCategory > resourceCategories = new ArrayList <>();
60
65
resourceCategories .add (resourceCategory );
61
- final Optional <List <AccessSubjectCategory >> accessSubjectCategories = addAccessSubjectCategoryRequest ();
62
- accessSubjectCategories .ifPresent (request ::setAccessSubjectCategory );
63
66
final Optional <List <ResourceCategory >> optionalResourceCategories = addResourceCategoryRequest ();
64
67
optionalResourceCategories .ifPresent (resourceCategories ::addAll );
65
68
request .setResourceCategory (resourceCategories );
66
69
final Optional <List <ActionCategory >> actionCategories = addActionCategoryRequest ();
67
70
actionCategories .ifPresent (request ::setActionCategory );
68
71
final Optional <List <EnvironmentCategory >> environmentCategories = addEnvironmentCategoryRequest ();
69
72
environmentCategories .ifPresent (request ::setEnvironmentCategory );
73
+ final Optional <List <AccessSubjectCategory >> accessSubjectCategories = addAccessSubjectCategoryRequest ();
74
+ accessSubjectCategories .ifPresent (request ::setAccessSubjectCategory );
70
75
return request ;
71
76
}
72
77
0 commit comments