52 lines
1.0 KiB
Java
52 lines
1.0 KiB
Java
|
package org.gcube.application.geoportal.common.model.profile;
|
||
|
|
||
|
import lombok.*;
|
||
|
import org.bson.Document;
|
||
|
|
||
|
import java.util.List;
|
||
|
|
||
|
@NoArgsConstructor
|
||
|
@AllArgsConstructor
|
||
|
@Getter
|
||
|
@Setter
|
||
|
@ToString
|
||
|
public class DataAccessPolicy {
|
||
|
|
||
|
public static final String POLICY = "policy";
|
||
|
public static final String ROLES = "roles";
|
||
|
public static final String ENFORCER = "enforcer";
|
||
|
|
||
|
@NoArgsConstructor
|
||
|
@AllArgsConstructor
|
||
|
@Getter
|
||
|
@Setter
|
||
|
@ToString
|
||
|
public static class Policy {
|
||
|
public static final String WRITE="write";
|
||
|
public static final String READ="read";
|
||
|
|
||
|
public static enum Type{
|
||
|
OWN,NONE,ANY
|
||
|
}
|
||
|
|
||
|
private Type write;
|
||
|
private Type read;
|
||
|
}
|
||
|
|
||
|
|
||
|
@NoArgsConstructor
|
||
|
@AllArgsConstructor
|
||
|
@Getter
|
||
|
@Setter
|
||
|
@ToString
|
||
|
public static class PolicyEnforcer {
|
||
|
public static final String FILTER="filter";
|
||
|
private Document filter;
|
||
|
}
|
||
|
|
||
|
|
||
|
private Policy policy;
|
||
|
private List<String> roles;
|
||
|
private PolicyEnforcer enforcer;
|
||
|
}
|