View Javadoc
1   /*
2    * Copyright 2008 Web Cohesion
3    *
4    * Licensed under the Apache License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    *   https://www.apache.org/licenses/LICENSE-2.0
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  
17  package org.springframework.security.oauth.provider;
18  
19  import org.springframework.security.oauth.common.signature.SignatureSecret;
20  import org.springframework.security.core.GrantedAuthority;
21  
22  import java.io.Serializable;
23  import java.util.List;
24  
25  /**
26   * Provides core OAuth consumer information.
27   *
28   * @author Ryan Heaton
29   */
30  public interface ConsumerDetails extends Serializable {
31  
32    /**
33     * The consumer key.
34     *
35     * @return The consumer key.
36     */
37    String getConsumerKey();
38  
39    /**
40     * The name of the consumer (for display purposes).
41     *
42     * @return The name of the consumer (for display purposes).
43     */
44    String getConsumerName();
45  
46    /**
47     * The signature secret.
48     *
49     * @return The signature secret.
50     */
51    SignatureSecret getSignatureSecret();
52  
53    /**
54     * Get the authorities that are granted to the OAuth consumer.  Not the these are NOT the authorities
55     * that are granted to the consumer with a user-authorized access token. Instead, these authorities are
56     * inherent to the consumer itself.
57     *
58     * @return The authorities.
59     */
60    List<GrantedAuthority> getAuthorities();
61  }