summaryrefslogtreecommitdiffstats
path: root/container-core/src/main/java/com/yahoo/restapi/RestApiImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'container-core/src/main/java/com/yahoo/restapi/RestApiImpl.java')
-rw-r--r--container-core/src/main/java/com/yahoo/restapi/RestApiImpl.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/container-core/src/main/java/com/yahoo/restapi/RestApiImpl.java b/container-core/src/main/java/com/yahoo/restapi/RestApiImpl.java
index 646177e60db..fda08342ead 100644
--- a/container-core/src/main/java/com/yahoo/restapi/RestApiImpl.java
+++ b/container-core/src/main/java/com/yahoo/restapi/RestApiImpl.java
@@ -14,6 +14,7 @@ import com.yahoo.restapi.RestApiMappers.ResponseMapperHolder;
import java.io.InputStream;
import java.net.URI;
+import java.security.Principal;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -405,6 +406,12 @@ class RestApiImpl implements RestApi {
: new UriBuilder(uri.getScheme() + "://" + uri.getHost());
}
@Override public AclMapping.Action aclAction() { return aclAction; }
+ @Override public Optional<Principal> userPrincipal() {
+ return Optional.ofNullable(request.getJDiscRequest().getUserPrincipal());
+ }
+ @Override public Principal userPrincipalOrThrow() {
+ return userPrincipal().orElseThrow(RestApiException.Unauthorized::new);
+ }
private class PathParametersImpl implements RestApi.RequestContext.PathParameters {
@Override