001/* 002 * (C) Copyright 2006-2016 Nuxeo SA (http://nuxeo.com/) and others. 003 * 004 * Licensed under the Apache License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.apache.org/licenses/LICENSE-2.0 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 * 016 * Contributors: 017 * Nuxeo - initial API and implementation 018 */ 019package org.nuxeo.ecm.core.api.security; 020 021import org.nuxeo.runtime.api.login.LoginComponent; 022 023/** 024 * @author Bogdan Stefanescu 025 */ 026// TODO: make it a constant utility class instead of an interface. 027public interface SecurityConstants { 028 029 String SYSTEM_USERNAME = LoginComponent.SYSTEM_USERNAME; 030 031 /** 032 * @deprecated since 5.3.1 administrator user names are configurable on user manager 033 * Too many references to this constant, no clean for LTS 2017 034 */ 035 @Deprecated 036 String ADMINISTRATOR = "Administrator"; 037 038 /** 039 * @deprecated since 5.3.1 anonymous user name is configurable on user manager 040 * Too many references to this constant, no clean for LTS 2017 041 */ 042 @Deprecated 043 String ANONYMOUS = "anonymous"; 044 045 /** 046 * @deprecated since 5.3.1 administrators groups are configurable on user manager 047 * Too many references to this constant, no clean for LTS 2017 048 */ 049 @Deprecated 050 String ADMINISTRATORS = "administrators"; 051 052 /** 053 * @deprecated since 5.3.1 default group is configurable on user manager 054 * Too many references to this constant, no clean for LTS 2017 055 */ 056 @Deprecated 057 String MEMBERS = "members"; 058 059 String EVERYONE = "Everyone"; 060 061 String EVERYTHING = "Everything"; 062 063 String RESTRICTED_READ = "RestrictedRead"; 064 065 String READ = "Read"; 066 067 String WRITE = "Write"; 068 069 String READ_WRITE = "ReadWrite"; 070 071 String REMOVE = "Remove"; 072 073 String VERSION = "Version"; 074 075 String READ_VERSION = "ReadVersion"; 076 077 String WRITE_VERSION = "WriteVersion"; 078 079 String BROWSE = "Browse"; 080 081 String WRITE_SECURITY = "WriteSecurity"; 082 083 String READ_SECURITY = "ReadSecurity"; 084 085 String READ_PROPERTIES = "ReadProperties"; 086 087 String WRITE_PROPERTIES = "WriteProperties"; 088 089 String READ_CHILDREN = "ReadChildren"; 090 091 String ADD_CHILDREN = "AddChildren"; 092 093 String REMOVE_CHILDREN = "RemoveChildren"; 094 095 String READ_LIFE_CYCLE = "ReadLifeCycle"; 096 097 String WRITE_LIFE_CYCLE = "WriteLifeCycle"; 098 099 String MANAGE_WORKFLOWS = "ManageWorkflows"; 100 101 String VIEW_WORKLFOW = "ReviewParticipant"; 102 103 String UNLOCK = "Unlock"; 104 105 /** 106 * Flag that can be used as principal to mark an unsupported ACL. 107 */ 108 String UNSUPPORTED_ACL = "_UNSUPPORTED_ACL_"; 109 110}