137 Commits

Author SHA1 Message Date
Hugo Trippaers
dc3f0cbc63 Improve the handling of the findbug exclude files 2014-09-03 10:41:22 +02:00
Rohit Yadav
33a249e77a CLOUDSTACK-7455: Fix possible case for NPE
NPE can happen if Spring fails to inject api authenticator, so better check
and set list of commands if the authenticator is not null or returning null cmds

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-31 14:42:18 +02:00
Rohit Yadav
550762a0dc SAMLUtils: fix signature, refactor generateRandomX509Certificate
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-30 21:37:55 +02:00
Rohit Yadav
784288eaab SAML2AuthManagerImpl: let the component return true on start
- Return super.true() even if plugin is not enabled
- Return empty list when getCommands is called

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-30 14:32:54 +02:00
Rohit Yadav
81608afee1 SAML2LoginAPIAuthenticatorCmdTest: Add missing license
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 20:06:38 +02:00
Rohit Yadav
6eae9b8596 saml: disable plugin by default and don't initiate if not enabled
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:49:48 +02:00
Rohit Yadav
aa02e30e95 saml: fix tests and update method signature that generates random certs
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:27 +02:00
Rohit Yadav
0402f68b12 SAML2LogoutAPIAuthenticatorCmd: if session is null, redirect to login page
If session is null, probably logout (local) happened removing the name id and
session index which is needed for global logout. The limitation by design is that
local logout will void possibility of global logout. To globally logout, one
use the SLO api which would logout locally as well.

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:26 +02:00
Rohit Yadav
de4e74b2b4 saml: Add unit tests for saml plugin
- Fixes signatures on plugin manager for ease of testing
- Fixes authenticator
- Adds unit testing for getType and authenticate methods for all cmd classes
- Adds SAMLAuthenticator test

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:26 +02:00
Rohit Yadav
15fdc1744c SAML2LogoutAPIAuthenticatorCmd: check logout response and redirect to UI
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:26 +02:00
Rohit Yadav
8dc50927f9 saml: use SAML_RESPONSE from SAMLUtils
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:26 +02:00
Rohit Yadav
ad13d3d747 SAML2UserAuthenticator: check that request params has SAMLResponse
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:26 +02:00
Rohit Yadav
7ee4176c7a SAML2LogoutAPIAuthenticatorCmd: implement single log out
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:25 +02:00
Rohit Yadav
b1946e8c13 SAML2LoginAPIAuthenticatorCmd: store nameid and session index in user's session
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:25 +02:00
Rohit Yadav
b401828aef saml: use values from config for user account, domain and redirected url
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:25 +02:00
Rohit Yadav
a13da8f9e0 saml2: Add GetServiceProviderMetaDataCmd that returns SP metadata XML
This adds GetServiceProviderMetaDataCmd which returns SP metadata XML, since
this information should be public for IdPs to discover, we implement this as a
login/cmd api so this does not require any kind of authentication to GET this

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:24 +02:00
Rohit Yadav
7687b7311a saml: Implement logic to check response against X509 keys
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:24 +02:00
Rohit Yadav
47ccce85a1 api: add method to pass on api authenticators to cmd classes
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:24 +02:00
Rohit Yadav
06e909923a saml: Have the plugin use IDP metadata from URL, get values from Config
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:24 +02:00
Rohit Yadav
37961ebdd8 saml: Implement SAML2AuthManager interface
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:23 +02:00
Rohit Yadav
d45b303569 saml2: Fix plugin after refactoring
- Use opensaml version from root pom
- Add utils and api as explicit dependency
- Add org.apache.cloudstack.saml.SAML2AuthServiceImpl bean
- Fix imports in all source files and resource xmls
- Use methods available from SAMLUtils to encode/decode SAML request/response
- SAML logout api is not the global logout api

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:23 +02:00
Rohit Yadav
4422fdd9ad saml2: Implement SAML2AuthServiceImpl which is a PluggableAPIAuthenticator
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:23 +02:00
Rohit Yadav
68e094ebaf saml: move refactor files from server to api module
- Move interfaces and classes from server to api module
- This can be then used for pluggable api authenticators

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:22 +02:00
Rajani Karuturi
14f3ad55ec Fixed CLOUDSTACK-7374: added PaginationControl while querying ldap users 2014-08-20 15:58:08 +05:30
Rohit Yadav
6a8f8317fd CLOUDSTACK-7361: Fix SAML2UserAuthenticator to not let every login credential
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-18 11:41:32 +02:00
Rohit Yadav
a6a63dd2d3 saml2: add opensaml as dependency
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:29 +02:00
Rohit Yadav
c35f704f21 saml2: add spring security saml2 extension 1.0.0.RELEASE
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:29 +02:00
Rohit Yadav
c4f200265b CLOUDSTACK-7083: Add SAML2 SSO plugin skeleton and stub
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:28 +02:00
Rajani Karuturi
736ff5f8e5 Fixed CLOUDSTACK-7303 [LDAP] while importing ldap users, update the user info if it already exists in cloudstack 2014-08-11 17:54:31 +05:30
Rajani Karuturi
fca41bf527 Fixed bug: CLOUDSTACK-7214 added a config for ldap connection read timeout. 2014-08-01 16:32:45 +05:30
Rajani Karuturi
f7c664fc2e Revert "Fixed bug: CLOUDSTACK-7214 added a config for ldap connection read timeout."
This reverts commit cd2f27a6628472b1c0a6289989dc802f534ec74e.

reverting it as it breaks the build when encryption is enabled.
2014-08-01 11:20:20 +05:30
Rajani Karuturi
cd2f27a662 Fixed bug: CLOUDSTACK-7214 added a config for ldap connection read timeout. 2014-07-31 17:33:18 +05:30
Rajani Karuturi
5fa2d1c7ca Fixed Bug: CLOUDSTACK-7200 [LDAP] importUsersCmd for a group fails incase any member of a group is not an user 2014-07-30 12:02:24 +05:30
Santhosh Edukulla
97d296bfbd Fixed Coverity reported performance issues like inefficient string concatenations, wrong boxing or unboxing types, inefficent map element retrievals
Signed-off-by: Daan Hoogland <daan@onecht.net>
2014-07-01 22:06:25 +02:00
Rajani Karuturi
f4779b4d0c Fixed CLOUDSTACK-6509 Cannot import multiple LDAP/AD users into a cloudstack account
Conflicts:
	api/src/com/cloud/user/AccountService.java
	plugins/user-authenticators/ldap/src/org/apache/cloudstack/api/command/LdapCreateAccountCmd.java
	plugins/user-authenticators/ldap/src/org/apache/cloudstack/api/command/LdapImportUsersCmd.java

Signed-off-by: Koushik Das <koushik@apache.org>
2014-04-29 14:49:06 +05:30
Rajani Karuturi
baadf930fb checkstyle fix for commit 8e2e8e5e8ab492fa40dedc0788c0ac61f912487b
improved ldap logging. added stacktrace in debug level incase of exceptions.

Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2014-04-24 17:30:12 +05:30
Rajani Karuturi
a92610d277 improved ldap logging. added stacktrace in debug level incase of exceptions.
Conflicts:
	plugins/user-authenticators/ldap/src/org/apache/cloudstack/ldap/LdapContextFactory.java

Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2014-04-24 16:47:52 +05:30
Devdeep Singh
b54ae73917 Fixing rat failure 2014-04-21 14:32:00 +05:30
Laszlo Hornyak
54cfc2c2b1 md5 authenticator test
Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-04-21 10:25:16 +02:00
Daan Hoogland
8b62b2cb92 findbugs: exclude known spiffy hacks a.k.a. false positives 2014-03-28 14:28:10 +01:00
Hugo Trippaers
4402685e11 Update master to 4.5.0-SNAPSHOT 2014-03-14 14:55:26 +01:00
Min Chen
99bdc8d875 Merge branch 'master' into rbac. 2014-03-13 11:05:03 -07:00
Rajani Karuturi
4552ec6322 Fixed CLOUDSTACK-6210 LDAP:listLdapUsers api throws exception when we click on "Add LDAP Account" This occurs when ldap basedn is not configured. Throwing an IAE and a proper message is returned from the api call
Signed-off-by: Ian Duffy <ian@ianduffy.ie>
2014-03-07 16:57:13 +00:00
Min Chen
48e08fe676 Merge branch 'master' into rbac. 2014-03-06 14:02:20 -08:00
Mandar Barve
b0c6d47347 - Updated APICommand annotation to add new flags that indicate if API request or response carry sensitive info - Updated all API classes with the new annotation flag values as per the API's sensitivity - Updated server code to check response annotation before audit logging
Signed-off-by: Daan Hoogland <daan@onecht.net>
(cherry picked from commit df270d6387c362b960064ee5123c14782e767a19)
Signed-off-by: Daan Hoogland <daan@onecht.net>
2014-02-25 22:59:10 +01:00
Min Chen
33cd1ab921 Merge branch 'master' into rbac 2014-01-22 11:23:51 -08:00
Alena Prokharchyk
202c18243b Fixed unittest 2014-01-21 20:05:16 -08:00
Alena Prokharchyk
ab627bc767 Changed "authenticate" method to return both - result of authentication, and action to perform when authentication failed - to the accountManagerImpl. Only if authenicators request INCREMENT_INCORRECT_LOGIN_ATTEMPT_COUNT, the incorrect_login_attempts parameter will be increased
Signed-off-by: Alena Prokharchyk <alena.prokharchyk@citrix.com>
2014-01-21 17:45:53 -08:00
Min Chen
929fbabaa2 Merge branch 'master' into rbac. 2014-01-17 14:37:08 -08:00
Hugo Trippaers
b61f0a74ca Centralize all eclipse m2e excludes in the main pom.xml 2014-01-14 09:39:42 +01:00