diff --git a/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/User.java b/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/User.java index d14cdd509..49a5e667f 100644 --- a/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/User.java +++ b/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/User.java @@ -111,6 +111,20 @@ public interface User extends Identifiable { ObjectPermissionSet getConnectionGroupPermissions() throws GuacamoleException; + /** + * Returns all sharing profile permissions given to this user. + * + * @return + * An ObjectPermissionSet of all sharing profile permissions granted to + * this user. + * + * @throws GuacamoleException + * If an error occurs while retrieving permissions, or if reading all + * permissions is not allowed. + */ + ObjectPermissionSet getSharingProfilePermissions() + throws GuacamoleException; + /** * Returns all permissions given to this user regarding currently-active * connections. diff --git a/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/permission/SystemPermission.java b/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/permission/SystemPermission.java index e33f8e0f7..33779a543 100644 --- a/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/permission/SystemPermission.java +++ b/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/permission/SystemPermission.java @@ -49,6 +49,11 @@ public class SystemPermission implements Permission { */ CREATE_CONNECTION_GROUP, + /** + * Create sharing profiles. + */ + CREATE_SHARING_PROFILE, + /** * Administer the system in general, including adding permissions * which affect the system (like user creation, connection creation, diff --git a/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/simple/SimpleUser.java b/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/simple/SimpleUser.java index da169fc6c..0b7a86041 100644 --- a/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/simple/SimpleUser.java +++ b/guacamole-ext/src/main/java/org/apache/guacamole/net/auth/simple/SimpleUser.java @@ -195,4 +195,9 @@ public class SimpleUser extends AbstractUser { return new SimpleObjectPermissionSet(); } + @Override + public ObjectPermissionSet getSharingProfilePermissions() { + return new SimpleObjectPermissionSet(); + } + }