diff options
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.java | 7 |
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 |