Commit Graph

8546 Commits

Author SHA1 Message Date
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 249446dc52 server: add config to enable/disable SAML SSO/SLO plugin
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:27 +02:00
Rohit Yadav b0f3d66f9d Config: add config for saml user account, domain and redirected URL to ACS UI
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:25 +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 0444bfb653 server: Add IDP entity ID config param
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:24 +02:00
Rohit Yadav 5d94fd5be5 server: Add SAML related config params in Config
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:23 +02:00
Rohit Yadav 37d696db80 ApiServer: Fix imports order, use org.apache.cloudstack.api.ApiServerService
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:23 +02:00
Rohit Yadav 591a686d77 server: fix server package after auth plugin refactor
- Have opensaml dependency to get version from root pom
- add com.cloud.api.auth.APIAuthenticationManagerImpl to spring ctx manager
- Fix getCommands() in APIAuthenticationManagerImpl
- Fix imports in resources, test and src classes

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
Rohit Yadav a364054db6 Minor fixes
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:21 +02:00
Rohit Yadav 2464e02bf4 SAML2LoginAPIAuthenticatorCmd: Set all necessary cookies and redirect to UI
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:21 +02:00
Rohit Yadav 2694ad7bd9 ApiServlet: Fix NPE while inserting to auditTrail
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:21 +02:00
Rohit Yadav a1dc9e8189 SAML2LoginAPIAuthenticatorCmd: Implement SAML SSO using HTTP Redirect binding
- Creates SAMLRequest and uses HTTP redirect binding (uses GET/302)
- Redirects to IdP for auth
- On successful auth, check for assertion
- Tries to get attributes based on standard LDAP attribute names
- Next, gets user using EntityManager, if not found creates one with NameID as UUID
- Finally tries to log in and redirect

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:21 +02:00
Rohit Yadav 9c7204d386 DefaultLoginAPIAuthenticatorCmd: move createLoginResponse to ApiServer
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:21 +02:00
Rohit Yadav 1a3813a342 ApiServer: change loginUser method signature to return ResponseObject
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:20 +02:00
Rohit Yadav b82207e081 SAML: WIP redirections work now
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:20 +02:00
Rohit Yadav 18ff47efc0 server: add opensaml as dependency
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:20 +02:00
Rohit Yadav df95a762f4 SAML2: add saml sso and slo apicmds skeleton, add classes to AuthManager
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-28 19:45:20 +02:00
Saksham Srivastava d9531fb0de CLOUDSTACK-7453: Network rate field specified with negative value in service offering results in db Exception 2014-08-28 16:01:11 +05:30
Saksham Srivastava 490d499b7f CLOUDSTACK-7453: Network rate field specified with negative value in service offering results in db Exception 2014-08-28 15:28:00 +05:30
Kishan Kavala 55983d47c0 CLOUDSTACK-7400: Allow migration of systemVms in LXC. USer Vms cannot be migrated 2014-08-27 13:05:04 +05:30
Kishan Kavala 08dc5c6f91 CLOUDSTACK-7428: Allow LXC cluster in SG enabled zones. Use lxc driver in security_group.py script for lxc host 2014-08-27 11:52:59 +05:30
Saksham Srivastava 9fb2a760c6 CLOUDSTACK-300: Creation of compute offering allow combination of local storage + HA 2014-08-26 14:48:51 +05:30
Jayapal 384025f258 CLOUDSTACK-7218: Remvoing all static nat associated with vm in case of secondary ips
In vm secondary ips case static nat configured to vm primary/secondary ips
IP1-->vm1Ip1, IP2-->vm1Ip2
While destroying vm deleting all static nats associated with the vm
2014-08-26 14:29:23 +05:30
Rohit Yadav d71c19f91c ApiXmlDocWriter: add more search name spaces to find APIs
Whenever a new API command is added to CloudStack, if developers are not using
the recommended namespace of org.apache.cloudstack.api.* they should add their
custom namespace/package here. ApiXmlDocWriter uses ReflectUtils to find APIs
within these packages (which must be also available in cloud-client).

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-25 18:16:28 +02:00
Likitha Shetty 433ec7c856 Fixed few issues reproted by coverity. 2014-08-25 16:11:58 +05:30
Mike Tutkowski 3773ff060e Update to volume-resize logic 2014-08-21 20:18:20 -06:00
Min Chen 1436ce62b6 CLOUDSTACK-7394:Caller should be owner after creating template from
snapshot/volume.
2014-08-21 17:16:13 -07:00
Santhosh Edukulla 19ffc93e2e Fixed few coverity reported issues:Aug22 2014 2014-08-21 17:09:27 +05:30
Rohit Yadav e3b3a18aef ConfigurationManagerImpl: Fix NPE when trying to access method on null object
Before checking obj.length, the fix is to check that the obj is not null

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-21 11:34:44 +02:00
Bharat Kumar cab2b12d7d CLOUDSTACK-7155 Re-copying templates to other zones doesn't work 2014-08-21 09:50:54 +05:30
Mike Tutkowski ffa4d73290 Update to volume-resize logic 2014-08-20 13:18:33 -06:00
Harikrishna Patnala 8d0817860f CLOUDSTACK-7337: Volume state remains in allocated after volume creation faliure from snapshot Volume should be marked to Destroy state after creation faliure.
Signed-off-by: Koushik Das <koushik@apache.org>
2014-08-20 17:39:53 +05:30
Wei Zhou 880bff28e0 CLOUDSTACK-7362: fix wrong uuid issue for resource tags
(cherry picked from commit 838a1a8476)
2014-08-18 16:17:36 +02:00
Wei Zhou b035a444c6 CLOUDSTACK-7308: add tags to all security group rules
(cherry picked from commit ae1b87ca23)
2014-08-18 16:17:28 +02:00
seif 59ea2e2960 Added the listHostTags API command 2014-08-17 20:38:46 -06:00
Stephen Hoogendijk 6978c18c3a CLOUDSTACK-7308 - Adds tagging support for security group rules 2014-08-15 09:39:53 +02:00
Girish Chaudhari adf7de9a95 CLOUDSTACK-5663 : Added the NULL CIDR check to avoid NPE for createNetwork and listNetwork
Signed-off-by: Daan Hoogland <daan@onecht.net>
2014-08-14 10:34:45 +02:00
Min Chen fee2bfce49 CLOUDSTACK-7344:VOLUME.DELETE usage event missing for VM's in ERROR
state.
2014-08-13 22:15:47 -07:00
Anthony Xu 90fe6d8087 removed trailing space 2014-08-13 11:09:38 -07:00
Rohit Yadav 31fbb20648 ApiXmlDocWriter: Don't hardcode around login api or skip it based on key name
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-13 14:05:18 +02:00
Luis Henrique Okama cb9319d3d8 bugfix CLOUDSTACK-7309 using findProjectByProjectAccountIdIncludingRemoved
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-13 00:07:25 +02:00
Min Chen e3564658be CLOUDSTACK-6940, CLOUDSTACK-7312, CLOUDSTACK-5512: Template/ISO/Volume
upload rejects some valid URL formats. Also consolidate URL format check
into one util routine.
2014-08-12 11:43:08 -07:00
Min Chen 83bd4d60f1 Revert "CLOUDSTACK-7312:ISOs cannot be downloaded from URLs without matching"
This reverts commit 737f76df8c.
2014-08-12 11:43:08 -07:00
Min Chen a8316de725 Revert "CLOUDSTACK-6940:Templates cannot be downloaded from URLs without"
This reverts commit 569e94908b.
2014-08-12 11:43:08 -07:00
Harikrishna Patnala 6568e0bb31 CLOUDSTACK-7305: hypervisor type parameter is mandatory when deploying VM using ISO
Signed-off-by: Koushik Das <koushik@apache.org>
2014-08-12 16:27:48 +05:30
Rohit Yadav ae207bea98 DefaultLoginAPIAuthenticatorCmd: return userId as UUID
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:32 +02:00
Rohit Yadav 384acffff4 ApiServer: take UTF_8 and other static vars from HttpUtils
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:32 +02:00
Rohit Yadav 3cc6efce04 ApiServlet: use HttpUtils instead of class specific implementation
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:32 +02:00
Rohit Yadav 983252cffd ApiResponseSerializer: Use HttpUtils instead of BaseCmd
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:32 +02:00
Rohit Yadav f11dcf8ef5 ApiServletTest: Fix test, now login/logout have their own API/class
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:31 +02:00
Rohit Yadav 224dc9f8e5 APIAuthenticator: refactor signature of APIAuthenticator interface's authenticate
Pass HttpServletResponse as it can be useful for authenticators which need to
have their own writer interface/method

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:31 +02:00
Rohit Yadav 6ec1a1b604 ApiServlet: move setting of response type up in the layer
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:31 +02:00
Rohit Yadav 7434f1bd33 ApiXmlDocWriter: get rid of hardcoded login/logout docs
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:31 +02:00
Rohit Yadav ee57f47e29 ApiServlet: use the new and refactored authentication mechanism
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:31 +02:00
Rohit Yadav 2e5bbc9a0d ApiXmlDocWriter: remove hardcoded login and logout apis
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:31 +02:00
Rohit Yadav b587291d55 ApiResponseSerializer: Skip extra boxing for Auth responses
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:30 +02:00
Rohit Yadav bd2898e491 APIAuthenticationManagerImpl: add the auth manager and bean entry in spring xmls
- This implements ManageBase, is a pluggable service
- Has a mechanism to return commands, useful for apidocs etc.
- Has a method to return APIAuthenticator based on API command name

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:30 +02:00
Rohit Yadav f7821ecf09 DefaultLoginAPIAuthenticatorCmd: Refactor and implement the default login mechanism
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:30 +02:00
Rohit Yadav 1330559b8d DefaultLogoutAPIAuthenticatorCmd: Refactor and implement the logout mechanism
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:30 +02:00
Rohit Yadav ac3adfeca7 APIAuthenticationManager: Add Auth manager definition
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:30 +02:00
Rohit Yadav 4d3fbc54ad APIAuthenticationType: Add auth enum type, login or logout
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:30 +02:00
Rohit Yadav 31722c2674 APIAuthenticator: Add interface definition for the auth mechanisms
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-12 12:01:29 +02:00
Min Chen 737f76df8c CLOUDSTACK-7312:ISOs cannot be downloaded from URLs without matching
file extensions.
2014-08-11 15:00:32 -07:00
amoghvk d1d722f9bd CLOUDSTACK-7295: VMs is Stopped state have no host ID, resulting in NPE 2014-08-11 14:56:58 -07:00
Alena Prokharchyk 97efbc56e4 CLOUDSTACK-7283: listUsers - for regular user, only return the caller info. If there are more users under the same account, their information should never be returned 2014-08-11 13:51:11 -07: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
Santhosh Edukulla fd96ad02d7 Fixed few coverity reported issues around concurrency, null checks 2014-08-11 16:55:23 +05:30
Santhosh Edukulla f9e11540c7 Fixed few coverity issues 2014-08-11 16:02:19 +05:30
Alena Prokharchyk 354756219c CLOUDSTACK-6486: Guest network guru - when add network, validate isolation method in case insensitive manner 2014-08-08 17:08:13 -07:00
Min Chen d33278250d CLOUDSTACK-7264:NPE while creating scheduled/recurring snapshots for the
removed account with cleanup_needed=1.
2014-08-08 09:42:55 -07:00
seif 67ca2557f9 Changes for a new API command to list the storage tags 2014-08-07 17:46:06 -06:00
Alena Prokharchyk 6d1482b97b CLOUDSTACK-7283: listUsers API is available for regular users now 2014-08-07 14:01:58 -07:00
Nitin Mehta f424a04b0c CLOUDSTACK-7272: Router stop fails with NPE. Fixing it by making the hostId as Long object than native type long. The issue was the response was checking for getHostId() != null to populate attribute hypervisor. But since the hostId is declared as long it will never be null, resulting in the NPE when populating hypervisor. Fixed that 2014-08-06 18:06:33 -07:00
Santhosh Edukulla dda2820552 Fixed Coverity reported type issues 2014-08-06 15:27:00 +05:30
Nitin Mehta b9d834e838 CLOUDSTACK-4200: listSystemVMs API and listRouters API should return hypervisor property since dynamic scaling is not enabled for all the hypervisors and that action can be showed only for the hypervisors that support it. 2014-08-05 17:29:34 -07:00
Anthony Xu 129437c636 added more log 2014-08-05 16:41:38 -07:00
Rohit Yadav 1176a836af server: use scoped variable in pom.xml for build.properties file path
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-05 18:30:14 +02:00
Ilia Shakitko 07f916dfc6 CLOUDSTACK-7159 Added "state" parameter to the "listPublicIpAddresses" API call
Signed-off-by: Ilia Shakitko <i.shakitko@tech.leaseweb.com>
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-08-05 18:13:38 +02:00
namita.chaudhari fce2880b9f CLOUDSTACK-2694: Able to configure duplicate firewall rule with protocol and no ports
Signed-off-by: Jayapal <jayapal@apache.org>
2014-08-05 17:57:54 +05:30
Damodar 221c118b4f CLOUDSTACK-7245: listIsos call does not return isdynamicallyscalable in the response attributes as mentioned in API docs. 2014-08-05 16:06:01 +05:30
Nitin Mehta 835ca8eea8 CLOUDSTACK-7018: Restore VM - missing destroyed usage event for the destroyed root volume. Also removed the resource count logic since we destroy the old root volume and create a new one. 2014-08-04 16:40:28 -07:00
Min Chen 8a21633050 CLOUDSTACK-7239:Wrong message thrown on Primary Storage addition failure
in some cases.
2014-08-04 16:04:38 -07:00
Frank.Zhang 1ee7e0c77e CLOUDSTACK-6278
Baremetal Advanced Networking support
2014-08-04 15:00:44 -07:00
Frank.Zhang 44dff6c426 CLOUDSTACK-6278
Baremetal Advanced Networking support
2014-08-04 15:00:44 -07:00
Alena Prokharchyk 05d056bb90 CLOUDSTACK-7194: deployVm Api, "hypervisor" parameter:
* is respected only when vm is deployed from ISO, or hypervisorType is not set on the template record
* if parameter passed when vm is deployed from template having hypervisor info set, validate that these 2 parameters are the same instead of silently defaulting the final value to the one set on the template
2014-08-04 14:21:52 -07:00
Santhosh Edukulla b7d3f1bd30 Fixed few coverity issues for resource synchronization 2014-08-04 16:09:26 +05:30
Edison Su 29f711e0a9 remove unused servlet 2014-08-01 16:55:35 -07:00
Alena Prokharchyk ffeca8bbd2 CLOUDSTACK-7209: handle the case when network fails to implement NoTransitionException, and null is returned to the caller stack. All caller methods should verify if the return value is null before processing it further. 2014-08-01 09:47:28 -07:00
Likitha Shetty f803100813 CLOUDSTACK-6969. Data Volume Shrink operation failing with "Unexpected Exception".
For ResizeVolume API command -
1. If hypervisor resource throws an exception, handle the NPE thrown by the job framework.
2. Improve user error message in case of RuntimeException by throwing the exception instead of 'Unexpected Exception'.
2014-08-01 16:23:47 +05:30
Santhosh Edukulla 92c70f03e0 Fixed Coverity Issues 2014-08-01 16:16:12 +05:30
Jayapal d28da9d986 CLOUDSTACK-7212: Failed creating LB rule on public port 8081 for VR as LB provider 2014-08-01 15:54:17 +05:30
Anthony Xu 5fb03aec9b check if admin user exists 2014-07-31 13:44:58 -07:00
Rohit Yadav 89fabe82b9 CLOUDSTACK-7211: Add Guest OS mapping before returning VirtualMachineTO object
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-07-31 19:03:51 +02:00
Santhosh Edukulla b371356abc Fixed coverity issues reported 2014-07-31 21:19:57 +05:30
Mike Tutkowski b919da8a5c CLOUDSTACK-7173 2014-07-30 19:27:45 -06:00
Alena Prokharchyk 89017a7d7b CS-19072: got rid of unneeded type casting when apply pagination to different resources 2014-07-30 10:33:45 -07:00
Santhosh Edukulla dc2346147b Fixed few coverity issues reported 2014-07-30 17:06:35 +05:30
Devdeep Singh 96b5c08250 CLOUDSTACK-7136. While listing hosts for migration, the offering details were
not correctly initialized in the vmprofile. With a custom offering the cpu,
cpu-speed and memory were getting initialized to null which caused a NPE in
the allocator. Fixed it by explicitly initializing the offering details in the
vm profile before calling into the allocator for listing suitable hosts.
2014-07-30 16:32:10 +05:30
Devdeep Singh fc14fe1132 CLOUDSTACK-7201. Before initating out live volume migration to a pool check that if the
destination pool is a cluster wide pool, it should be in the same cluster as the vm to
which the volume is attached.
2014-07-30 13:01:29 +05:30