(file) Return to SecureLocalAuthenticator.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Security / Authentication

 1 karl  1.11 //%2006////////////////////////////////////////////////////////////////////////
 2 mike  1.2  //
 3 karl  1.8  // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
 4            // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
 5            // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
 6 karl  1.7  // IBM Corp.; EMC Corporation, The Open Group.
 7 karl  1.8  // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
 8            // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
 9 karl  1.9  // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
10            // EMC Corporation; VERITAS Software Corporation; The Open Group.
11 karl  1.11 // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
12            // EMC Corporation; Symantec Corporation; The Open Group.
13 mike  1.2  //
14 kumpf 1.5  // Permission is hereby granted, free of charge, to any person obtaining a copy
15            // of this software and associated documentation files (the "Software"), to
16            // deal in the Software without restriction, including without limitation the
17            // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
18            // sell copies of the Software, and to permit persons to whom the Software is
19            // furnished to do so, subject to the following conditions:
20            // 
21            // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
22            // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
23            // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
24            // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
25            // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
26            // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
27            // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
28            // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29 mike  1.2  //
30            //==============================================================================
31            //
32            // Author: Nag Boranna, Hewlett-Packard Company(nagaraja_boranna@hp.com)
33            //
34            // Modified By:
35 sushma.fernandes 1.10 //            Sushma Fernandes, Hewlett-Packard Company(sushma_fernandes@hp.com)
36 mike             1.2  //
37                       //%/////////////////////////////////////////////////////////////////////////////
38                       
39                       #ifndef Pegasus_SecureLocalAuthenticator_h
40                       #define Pegasus_SecureLocalAuthenticator_h
41                       
42                       #include "LocalAuthenticator.h"
43 chuck            1.6  
44                       #include <Pegasus/Security/Authentication/Linkage.h>
45 mike             1.2  
46                       
47                       PEGASUS_NAMESPACE_BEGIN
48                       
49 kumpf            1.4  /** This class implements file based secure local authentication mechanism. 
50                           It extends the LocalAuthenticator and provides implementation.
51 mike             1.2  */   
52                       class PEGASUS_SECURITY_LINKAGE SecureLocalAuthenticator : public LocalAuthenticator
53                       {
54                       public:
55                       
56                           /** constructor. */ 
57                           SecureLocalAuthenticator();
58                       
59                           /** destructor. */ 
60                           ~SecureLocalAuthenticator();
61                       
62 kumpf            1.4      /** Verify the authentication of the requesting user.
63                               @param userName String containing the user name
64                               @param secretReceived String containing the authentication secret
65                               sent by the client.
66                               @param secretKept String containing the authentication secret that
67                               was sent to client as part of the challenge.
68 mike             1.11.30.1         @param sessionKey session key assigned by the executor.
69 kumpf            1.4               @return true on successful authentication, false otherwise
70                                */
71 mike             1.2           Boolean authenticate(
72 kumpf            1.3               const String& userName, 
73                                    const String& secretReceived, 
74 mike             1.11.30.1         const String& secretKept,
75                                    SessionKey& sessionKey);
76 mike             1.2       
77 sushma.fernandes 1.10          /**
78                                    Verify whether the user is valid.
79                                    @param userName String containing the user name
80                                    @return true on successful validation, false otherwise
81                                */
82                                Boolean validateUser(const String& userName);
83                            
84 kumpf            1.4           /** Construct and return the Peagaus Local authentication challenge header
85                                    @param authType String containing the authentication type
86                                    @param userName String containing the user name
87                                    @param challenge String to store the authentication challenge secret
88                                    @return A string containing the authentication challenge header.
89                                */
90 kumpf            1.3           String getAuthResponseHeader(
91                                    const String& authType, 
92                                    const String& userName, 
93                                    String& challenge);
94 mike             1.2       };
95                            
96                            
97                            PEGASUS_NAMESPACE_END
98                            
99                            #endif /* Pegasus_SecureLocalAuthenticator_h */

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2