Skip to content

Commit f2ddb95

Browse files
author
Ronen Hilewicz
committed
Take IdentityContext in AuthorizerClient.query
And update java-directory and java-authorizer
1 parent 9f7274b commit f2ddb95

File tree

7 files changed

+167
-152
lines changed

7 files changed

+167
-152
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,4 @@ hs_err_pid*
2626

2727
# IDE specific
2828
.idea/
29+
.factorypath

examples/authz-example/pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
<dependency>
1919
<groupId>com.aserto</groupId>
2020
<artifactId>aserto-java</artifactId>
21-
<version>0.31.1</version>
21+
<version>0.31.4</version>
2222
</dependency>
2323
</dependencies>
2424

@@ -51,4 +51,4 @@
5151
</plugin>
5252
</plugins>
5353
</build>
54-
</project>
54+
</project>

examples/directory-example/pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
<dependency>
1919
<groupId>com.aserto</groupId>
2020
<artifactId>aserto-java</artifactId>
21-
<version>0.31.1</version>
21+
<version>0.31.4</version>
2222
</dependency>
2323
</dependencies>
2424

@@ -51,4 +51,4 @@
5151
</plugin>
5252
</plugins>
5353
</build>
54-
</project>
54+
</project>

pom.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>com.aserto</groupId>
88
<artifactId>aserto-java</artifactId>
9-
<version>0.31.3</version>
9+
<version>0.31.4</version>
1010

1111
<name>${project.groupId}:${project.artifactId}</name>
1212
<description>Java SDK to interact with aserto services</description>
@@ -50,12 +50,12 @@
5050
<dependency>
5151
<groupId>com.aserto</groupId>
5252
<artifactId>java-authorizer</artifactId>
53-
<version>0.20.13</version>
53+
<version>0.20.14</version>
5454
</dependency>
5555
<dependency>
5656
<groupId>com.aserto</groupId>
5757
<artifactId>java-directory</artifactId>
58-
<version>0.31.4</version>
58+
<version>0.31.5</version>
5959
</dependency>
6060

6161
<!-- Used for unit testing -->

src/main/java/com/aserto/AuthorizerClient.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,18 @@
1212

1313
public interface AuthorizerClient {
1414
public List<Module> listPolicies(String policyName, String policyLabel);
15+
1516
public Module getPolicy(String policyId);
17+
1618
public List<Decision> is(IdentityCtx identityCtx, PolicyCtx policyCtx);
19+
1720
public List<Decision> is(IdentityCtx identityCtx, PolicyCtx policyCtx, Map<String, Value> resourceCtx);
18-
public Struct query(String query, PolicyCtx policyContext, Map<String, Value> values);
21+
22+
public Struct query(String query, PolicyCtx policyContext, Map<String, Value> resourceCtx);
23+
24+
public Struct query(String query, IdentityCtx identityCtx, PolicyCtx policyContext, Map<String, Value> resourceCtx);
25+
1926
public Map<String, Value> decisionTree(IdentityCtx identityCtx, PolicyCtx policyCtx);
27+
2028
public void close();
2129
}

src/main/java/com/aserto/authorizer/AuthzClient.java

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import com.aserto.authorizer.v2.QueryRequest;
2020
import com.aserto.authorizer.v2.QueryResponse;
2121
import com.aserto.authorizer.v2.api.IdentityContext;
22+
import com.aserto.authorizer.v2.api.IdentityType;
2223
import com.aserto.authorizer.v2.api.Module;
2324
import com.aserto.authorizer.v2.api.PolicyContext;
2425
import com.aserto.authorizer.v2.api.PolicyInstance;
@@ -32,6 +33,7 @@
3233
public class AuthzClient implements AuthorizerClient {
3334
private final AuthorizerGrpc.AuthorizerBlockingStub client;
3435
private final ManagedChannel channel;
36+
3537
public AuthzClient(ManagedChannel channel) {
3638
client = AuthorizerGrpc.newBlockingStub(channel);
3739
this.channel = channel;
@@ -84,21 +86,29 @@ public List<Decision> is(IdentityCtx identityCtx, PolicyCtx policyCtx, Map<Strin
8486
}
8587

8688
@Override
87-
public Struct query(String query, PolicyCtx policyContext, Map<String, Value> values) {
89+
public Struct query(String query, IdentityCtx identityCtx, PolicyCtx policyContext,
90+
Map<String, Value> resourceCtx) {
8891
QueryRequest.Builder queryRequestBuilder = QueryRequest.newBuilder();
8992
queryRequestBuilder.setQuery(query);
9093

94+
IdentityContext identityContext = buildIdentityContext(identityCtx);
9195
PolicyInstance policy = buildPolicy(policyContext.getName());
92-
Struct.Builder structBuilder = buildResourceContext(values);
96+
Struct.Builder resourceContext = buildResourceContext(resourceCtx);
9397

98+
queryRequestBuilder.setIdentityContext(identityContext);
9499
queryRequestBuilder.setPolicyInstance(policy);
95-
queryRequestBuilder.setResourceContext(structBuilder);
100+
queryRequestBuilder.setResourceContext(resourceContext);
96101

97102
QueryResponse queryResponse = client.query(queryRequestBuilder.build());
98103

99104
return queryResponse.getResponse();
100105
}
101106

107+
@Override
108+
public Struct query(String query, PolicyCtx policyContext, Map<String, Value> resourceCtx) {
109+
return query(query, new IdentityCtx("", IdentityType.IDENTITY_TYPE_NONE), policyContext, resourceCtx);
110+
}
111+
102112
@Override
103113
public Map<String, Value> decisionTree(IdentityCtx identityCtx, PolicyCtx policyCtx) {
104114
DecisionTreeRequest.Builder decisionTreeBuilder = DecisionTreeRequest.newBuilder();
@@ -129,7 +139,7 @@ private PolicyInstance buildPolicy(String name) {
129139
}
130140

131141
private IdentityContext buildIdentityContext(IdentityCtx identityContext) {
132-
IdentityContext.Builder identityContextBuilder = IdentityContext.newBuilder();
142+
IdentityContext.Builder identityContextBuilder = IdentityContext.newBuilder();
133143
identityContextBuilder.setIdentity(identityContext.getIdentity());
134144
identityContextBuilder.setType(identityContext.getIdentityType());
135145

0 commit comments

Comments
 (0)