Skip to content

Commit d81b59c

Browse files
authored
Fixes Dynamic RBAC Example (#744)
* Adds CI Workflow for Examples * Changes wrong docker-compose path * Changes version of DynamicRBAC to milestone-05 (test purpose) * Changes version of DynamicRBAC to b0f9724 (test purpose) * Changes version of DynamicRBAC to 2ddae04 (test purpose) * Changes version of DynamicRBAC to 19b8725 (test purpose) * Changes version of DynamicRBAC to 025c597 (test purpose) * Changes version of DynamicRBAC to 2f374eb (test purpose) * Changes version of DynamicRBAC to e0e13f1 (test purpose) * Changes version of DynamicRBAC to 7cc0cf5 (test purpose) * Changes version of DynamicRBAC to f619d5a (test purpose) * Changes version of DynamicRBAC to bb3ce87 (test purpose) * Changes version of DynamicRBAC to cdd6ad7 (test purpose) * Changes version of DynamicRBAC to a84f97b (test purpose) * Removes Discovery Integration * Changes version back to Snapshot * Changes Discovery Integration * Adds admin rule
1 parent 0bac9fe commit d81b59c

3 files changed

Lines changed: 182 additions & 1 deletion

File tree

Lines changed: 172 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,172 @@
1+
name: Test Examples
2+
3+
on:
4+
pull_request:
5+
branches: [ main ]
6+
paths-ignore:
7+
- '.github/ISSUE_TEMPLATE/**'
8+
- '.github/CODE_OF_CONDUCT.md'
9+
- '.github/CODING_CONVENTIONS.md'
10+
- '.github/CONTRIBUTING.md'
11+
- '.github/dependabot.yml'
12+
- '.github/pull_request_template.md'
13+
- '.github/SECURITY.md'
14+
- 'docs/**'
15+
- 'README.md'
16+
- '.gitattributes'
17+
- '.gitignore'
18+
- 'LICENSE'
19+
- 'NOTICE'
20+
21+
jobs:
22+
test-basyx-client:
23+
runs-on: ubuntu-latest
24+
name: Test BaSyx Client Example
25+
steps:
26+
- uses: actions/checkout@v4
27+
28+
- name: Set up JDK 17
29+
uses: actions/setup-java@v4
30+
with:
31+
java-version: '17'
32+
distribution: 'adopt'
33+
cache: maven
34+
35+
- name: Start BaSyx Client Example
36+
run: docker compose -f examples/BaSyxClient/docker-compose.yml up -d
37+
38+
- name: Stop BaSyx Client Example
39+
run: docker compose -f examples/BaSyxClient/docker-compose.yml down
40+
41+
test-basyx-databridge:
42+
runs-on: ubuntu-latest
43+
name: Test BaSyx DataBridge Example
44+
steps:
45+
- uses: actions/checkout@v4
46+
47+
- name: Set up JDK 17
48+
uses: actions/setup-java@v4
49+
with:
50+
java-version: '17'
51+
distribution: 'adopt'
52+
cache: maven
53+
54+
- name: Start BaSyx DataBridge Example
55+
run: docker compose -f examples/BaSyxDatabridge/docker-compose.yml up -d
56+
57+
- name: Stop BaSyx DataBridge Example
58+
run: docker compose -f examples/BaSyxDatabridge/docker-compose.yml down
59+
60+
test-basyx-dynamic-rbac:
61+
runs-on: ubuntu-latest
62+
name: Test BaSyx Dynamic RBAC Example
63+
steps:
64+
- uses: actions/checkout@v4
65+
66+
- name: Set up JDK 17
67+
uses: actions/setup-java@v4
68+
with:
69+
java-version: '17'
70+
distribution: 'adopt'
71+
cache: maven
72+
73+
- name: Start BaSyx Dynamic RBAC Example
74+
run: docker compose -f examples/BaSyxDynamicRBAC/docker-compose.yaml up -d
75+
76+
- name: Stop BaSyx Dynamic RBAC Example
77+
run: docker compose -f examples/BaSyxDynamicRBAC/docker-compose.yaml down
78+
79+
test-basyx-kafka:
80+
runs-on: ubuntu-latest
81+
name: Test BaSyx Kafka Example
82+
steps:
83+
- uses: actions/checkout@v4
84+
85+
- name: Set up JDK 17
86+
uses: actions/setup-java@v4
87+
with:
88+
java-version: '17'
89+
distribution: 'adopt'
90+
cache: maven
91+
92+
- name: Start BaSyx Kafka Example
93+
run: docker compose -f examples/BaSyxKafka/docker-compose.yaml up -d
94+
95+
- name: Stop BaSyx Kafka Example
96+
run: docker compose -f examples/BaSyxKafka/docker-compose.yaml down
97+
98+
test-basyx-minimal:
99+
runs-on: ubuntu-latest
100+
name: Test BaSyx Minimal Example
101+
steps:
102+
- uses: actions/checkout@v4
103+
104+
- name: Set up JDK 17
105+
uses: actions/setup-java@v4
106+
with:
107+
java-version: '17'
108+
distribution: 'adopt'
109+
cache: maven
110+
111+
- name: Start BaSyx Minimal Example
112+
run: docker compose -f examples/BaSyxMinimal/docker-compose.yml up -d
113+
114+
- name: Stop BaSyx Minimal Example
115+
run: docker compose -f examples/BaSyxMinimal/docker-compose.yml down
116+
117+
test-basyx-nginx:
118+
runs-on: ubuntu-latest
119+
name: Test BaSyx NGINX Example
120+
steps:
121+
- uses: actions/checkout@v4
122+
123+
- name: Set up JDK 17
124+
uses: actions/setup-java@v4
125+
with:
126+
java-version: '17'
127+
distribution: 'adopt'
128+
cache: maven
129+
130+
- name: Start BaSyx NGINX Example
131+
run: docker compose -f examples/BaSyxNGINX/docker-compose.yml up -d
132+
133+
- name: Stop BaSyx NGINX Example
134+
run: docker compose -f examples/BaSyxNGINX/docker-compose.yml down
135+
136+
test-basyx-operation-delegation:
137+
runs-on: ubuntu-latest
138+
name: Test BaSyx Operation Delegation Example
139+
steps:
140+
- uses: actions/checkout@v4
141+
142+
- name: Set up JDK 17
143+
uses: actions/setup-java@v4
144+
with:
145+
java-version: '17'
146+
distribution: 'adopt'
147+
cache: maven
148+
149+
- name: Start BaSyx Operation Delegation Example
150+
run: docker compose -f examples/BaSyxOperationDelegation/docker-compose.yml up -d
151+
152+
- name: Stop BaSyx Operation Delegation Example
153+
run: docker compose -f examples/BaSyxOperationDelegation/docker-compose.yml down
154+
155+
test-basyx-secured:
156+
runs-on: ubuntu-latest
157+
name: Test BaSyx Secured Example
158+
steps:
159+
- uses: actions/checkout@v4
160+
161+
- name: Set up JDK 17
162+
uses: actions/setup-java@v4
163+
with:
164+
java-version: '17'
165+
distribution: 'adopt'
166+
cache: maven
167+
168+
- name: Start BaSyx Secured Example
169+
run: docker compose -f examples/BaSyxSecured/docker-compose.yaml up -d
170+
171+
- name: Stop BaSyx Secured Example
172+
run: docker compose -f examples/BaSyxSecured/docker-compose.yaml down

examples/BaSyxDynamicRBAC/basyx/aas-discovery.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,4 @@ basyx.feature.authorization.enabled = true
99
basyx.feature.authorization.type = rbac
1010
basyx.feature.authorization.jwtBearerTokenProvider = keycloak
1111
basyx.feature.authorization.rbac.file = file:/application/rbac_rules.json
12-
spring.security.oauth2.resourceserver.jwt.issuer-uri= http://keycloak:9097/realms/BaSyx
12+
spring.security.oauth2.resourceserver.jwt.issuer-uri= http://keycloak-rbac:8080/realms/BaSyx

examples/BaSyxDynamicRBAC/basyx/rules/aas_discovery_rbac_rules.json

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,13 @@
11
[
2+
{
3+
"role": "admin",
4+
"action": ["CREATE", "READ", "UPDATE", "DELETE"],
5+
"targetInformation": {
6+
"@type": "aas-discovery-service",
7+
"aasIds": "*",
8+
"assetIds": []
9+
}
10+
},
211
{
312
"role": "basyx-assetid-creator",
413
"action": "CREATE",

0 commit comments

Comments
 (0)