@@ -64,25 +169,155 @@ const UserDetails = ({data, notifyOnDataChange}) => {
{data?.displayToken ?
<>
+
+ }
+ aria-controls="panel1-content"
+ id="panel1-header"
+ >
+ Access Token
+
+
+
+
+
+
+
+ }
+ aria-controls="panel1-content"
+ id="panel1-header"
+ >
+ Id Token
+
+
+
+
+
+
+ >
+ : ''}
+
+ }
+ aria-controls="panel1-content"
+ id="panel1-header"
+ >
+ User Details
+
+
-
-
Id Token
-
{showMoreIdToken ? (!!data ? data?.id_token : '') : (!!data ? data?.id_token.substring(0, 250).concat(' ...') : '')}
-
setShowMoreIdToken(!showMoreIdToken)}>{showMoreIdToken ? "Show less" : "Show more"}
+
+
+ {cedarlingBootstrapPresent ?
+
+ }
+ aria-controls="panel1-content"
+ id="panel1-header"
+ >
+ Cedarling Authz Request Form
+
+
+
+ Principal
+ setAccessToken(!accessToken)} />} label="Access Token" />
+ setUserInfoToken(!userInfoToken)} />} label="Userinfo Token" />
+ setIdToken(!idToken)} />} label="Id Token" />
+
+ {
+ setAction(e.target.value);
+ }}
+ />
+ Resource
+
+ Context
+
+
+
- >
- : ''}
-
+
+ : ''}
+ {!!authzResult ?
+
+ }
+ aria-controls="panel1-content"
+ id="panel1-header"
+ >
+ Cedarling Authz Result
+
+
+
+
+
+ : ''}
+ {!!authzLogs ?
+
+ }
+ aria-controls="panel2-content"
+ id="panel2-header"
+ >
+ Cedarling Authz Logs
+
+
+
+
+
+ : ''}
+
-
+
)
};
diff --git a/demos/jans-tarp/src/static/chrome/manifest.json b/demos/jans-tarp/src/static/chrome/manifest.json
index 2cb920ca3c3..ce82d4a8486 100644
--- a/demos/jans-tarp/src/static/chrome/manifest.json
+++ b/demos/jans-tarp/src/static/chrome/manifest.json
@@ -24,5 +24,8 @@
"*://*/*"
],
"options_page": "options.html",
- "incognito": "split"
+ "incognito": "split",
+ "content_security_policy": {
+ "extension_pages": "script-src 'self' 'wasm-unsafe-eval'; object-src 'self';"
+ }
}
\ No newline at end of file
diff --git a/demos/jans-tarp/src/static/firefox/manifest.json b/demos/jans-tarp/src/static/firefox/manifest.json
index e30988c67a1..0ace852b544 100644
--- a/demos/jans-tarp/src/static/firefox/manifest.json
+++ b/demos/jans-tarp/src/static/firefox/manifest.json
@@ -27,5 +27,8 @@
"gecko": {
"id": "jans-tarp@gluu.org"
}
+ },
+ "content_security_policy": {
+ "extension_pages": "script-src 'self' 'wasm-unsafe-eval'; object-src 'self';"
}
}
\ No newline at end of file
diff --git a/docs/cedarling/cedarling-authz.md b/docs/cedarling/cedarling-authz.md
index 89f3a5c7619..70445076942 100644
--- a/docs/cedarling/cedarling-authz.md
+++ b/docs/cedarling/cedarling-authz.md
@@ -83,14 +83,14 @@ decision_result = await cedarling(input)
## Automatically Adding Entity References to the Context
-Cedarling simplifies context creation by automatically including certain entities. This means you don't need to manually pass their references when using them in your policies. The following entities are automatically added to the context, along with their naming conventions in `lower_snake_case` format:
-
-- **Workload Entity**: `workload`
-- **User Entity**: `user`
-- **Resource Entity**: `resource`
-- **Access Token Entity**: `access_token`
-- **ID Token Entity**: `id_token`
-- **Userinfo Token Entity**: `userinfo_token`
+Cedarling simplifies context creation by automatically including certain entities. This means you don't need to manually pass their references when using them in your policies. The following entities are automatically added to the context.
+
+- Workload Entity
+- User Entity
+- Resource Entity
+- Access Token Entity
+- ID Token Entity
+- Userinfo Token Entity
### Example Policy
diff --git a/jans-auth-server/server/src/main/java/io/jans/as/server/authorize/ws/rs/AuthorizeAction.java b/jans-auth-server/server/src/main/java/io/jans/as/server/authorize/ws/rs/AuthorizeAction.java
index 35384a724db..9433e274ce3 100644
--- a/jans-auth-server/server/src/main/java/io/jans/as/server/authorize/ws/rs/AuthorizeAction.java
+++ b/jans-auth-server/server/src/main/java/io/jans/as/server/authorize/ws/rs/AuthorizeAction.java
@@ -86,6 +86,7 @@
@Named
public class AuthorizeAction {
+ public static final String UNKNOWN = "Unknown";
@Inject
private Logger log;
@@ -985,7 +986,7 @@ public String getClientDisplayName() {
log.trace("client {}", clientId);
if (StringUtils.isBlank(clientId)) {
- return "Unknown";
+ return UNKNOWN;
}
final Client client = clientService.getClient(clientId);
@@ -994,15 +995,19 @@ public String getClientDisplayName() {
public String getClientDisplayName(final Client client) {
log.trace("client {}", client);
-
+
if (client == null) {
- getClientDisplayName();
+ return UNKNOWN;
}
return getCheckedClientDisplayName(client);
}
private String getCheckedClientDisplayName(final Client client) {
+ if (client == null) {
+ return UNKNOWN;
+ }
+
if (StringUtils.isNotBlank(client.getClientName())) {
return client.getClientName();
}
@@ -1011,7 +1016,7 @@ private String getCheckedClientDisplayName(final Client client) {
return client.getClientId();
}
- return "Unknown";
+ return UNKNOWN;
}
public String getAuthReqId() {
diff --git a/jans-auth-server/server/src/main/webapp/WEB-INF/incl/layout/authorize-extended-template.xhtml b/jans-auth-server/server/src/main/webapp/WEB-INF/incl/layout/authorize-extended-template.xhtml
index 37ca0a66712..57a4ac12f27 100644
--- a/jans-auth-server/server/src/main/webapp/WEB-INF/incl/layout/authorize-extended-template.xhtml
+++ b/jans-auth-server/server/src/main/webapp/WEB-INF/incl/layout/authorize-extended-template.xhtml
@@ -56,8 +56,8 @@
@@ -132,10 +132,6 @@