1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.directory.server.core.trigger;
21
22
23 import javax.naming.InvalidNameException;
24 import javax.naming.NamingException;
25
26 import org.apache.directory.server.constants.ServerDNConstants;
27 import org.apache.directory.server.core.interceptor.context.OperationContext;
28 import org.apache.directory.shared.ldap.name.LdapDN;
29
30
31 public class SimpleTriggerExecutionAuthorizer implements TriggerExecutionAuthorizer
32 {
33 private static LdapDN adminName;
34
35 static
36 {
37 try
38 {
39 adminName = new LdapDN( ServerDNConstants.ADMIN_SYSTEM_DN_NORMALIZED );
40 }
41 catch ( InvalidNameException e )
42 {
43
44 e.printStackTrace();
45 }
46 }
47
48 public boolean hasPermission( OperationContext opContext ) throws NamingException
49 {
50 LdapDN principalName = opContext.getSession().getEffectivePrincipal().getJndiName();
51 return principalName.equals( adminName );
52 }
53 }