2e330d85edb75ef663adae85dd16d9c1bba17b48
[controller.git] / opendaylight / usermanager / src / main / java / org / opendaylight / controller / usermanager / IAAAProvider.java
1
2 /*
3  * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
4  *
5  * This program and the accompanying materials are made available under the
6  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
7  * and is available at http://www.eclipse.org/legal/epl-v10.html
8  */
9
10 package org.opendaylight.controller.usermanager;
11
12 /**
13  * IAAAProvider exposes a pluggable interface for 3rd party Authentication and Authorization
14  * providers to support the UserManager with AAA management.
15  */
16
17 public interface IAAAProvider {
18
19     /**
20      * Authenticate user with AAA server and return authentication and authorization info
21      * using the Provider's mechanism
22      * @param userName
23      * @param password
24      * @param server
25      * @param secretKey
26      * @return Authentication and Authorization Response
27      */
28     public AuthResponse authService(String userName, String password,
29             String server, String secretKey);
30
31     /**
32      * Returns the Name of the Provider
33      *
34      * @return Name of the AAA provider
35      */
36     public String getName();
37 }