001package com.identityworksllc.iiq.common.plugin.annotations;
002
003import sailpoint.authorization.Authorizer;
004
005import java.lang.annotation.ElementType;
006import java.lang.annotation.Retention;
007import java.lang.annotation.RetentionPolicy;
008import java.lang.annotation.Target;
009
010@Retention(RetentionPolicy.RUNTIME)
011@Target({ElementType.TYPE, ElementType.METHOD})
012public @interface AuthorizedBy {
013    String attribute() default "";
014
015    String attributeValue() default "";
016
017    String[] attributeValueIn() default {};
018
019    Class<? extends Authorizer> authorizerClass() default Authorizer.class;
020
021    String authorizerRule() default "";
022
023    String[] capabilitiesList() default {};
024
025    String capability() default "";
026
027    String population() default "";
028
029    String right() default "";
030
031    String[] rightsList() default {};
032
033    boolean systemAdmin() default false;
034}