Commit Graph

105 Commits

Author SHA1 Message Date
Rohit Yadav 107595a6a5 CLOUDSTACK-8457: SAML auth plugin improvements for production usage
* Move config options to SAML plugin
  This moves all configuration options from Config.java to SAML auth manager. This
  allows us to use the config framework.
* Make SAML2UserAuthenticator validate SAML token in httprequest
* Make logout API use ConfigKeys defined in saml auth manager
* Before doing SAML auth, cleanup local states and cookies
* Fix configurations in 4.5.1 to 4.5.2 upgrade path
* Fail if idp has no sso URL defined
* Add a default set of SAML SP cert for testing purposes
  Now to enable and use saml, one needs to do a deploydb-saml after doing a deploydb
* UI remembers login selections, IDP server

- CLOUDSTACK-8458:
    * On UI show dropdown list of discovered IdPs
    * Support SAML Federation, where there may be more than one IdP
        - New datastructure to hold metadata of SP or IdP
        - Recursive processing of IdP metadata
        - Fix login/logout APIs to get new interface and metadata data structure
        - Add org/contact information to metadata
        - Add new API: listIdps that returns list of all discovered IdPs
        - Refactor and cleanup code and tests

- CLOUDSTACK-8459:
    * Add HTTP-POST binding to SP metadata
    * Authn requests must use either HTTP POST/Artifact binding

- CLOUDSTACK-8461:
    * Use unspecified x509 cert as a fallback encryption/signing key
      In case a IDP's metadata does not clearly say if their certificates need to be
      used as signing or encryption and we don't find that, fallback to use the
      unspecified key itself.

- CLOUDSTACK-8462:
    * SAML Auth plugin should not do authorization
      This removes logic to create user if they don't exist. This strictly now
      assumes that users have been already created/imported/authorized by admins.
      As per SAML v2.0 spec section 4.1.2, the SP provider should create authn requests using
      either HTTP POST or HTTP Artifact binding to transfer the message through a
      user agent (browser in our case). The use of HTTP Redirect was one of the reasons
      why this plugin failed to work for some IdP servers that enforce this.
    * Add new User Source
      By reusing the source field, we can find if a user has been SAML enabled or not.
      The limitation is that, once say a user is imported by LDAP and then SAML
      enabled - they won't be able to use LDAP for authentication
    * UI should allow users to pass in domain they want to log into, though it is
      optional and needed only when a user has accounts across domains with same
      username and authorized IDP server
    * SAML users need to be authorized before they can authenticate
        - New column entity to track saml entity id for a user
        - Reusing source column to check if user is saml enabled or not
        - Add new source types, saml2 and saml2disabled
        - New table saml_token to solve the issue of multiple users across domains and
          to enforce security by tracking authn token and checking the samlresponse for
          the tokens
        - Implement API: authorizeSamlSso to enable/disable saml authentication for a
          user
        - Stubs to implement saml token flushing/expiry

- CLOUDSTACK-8463:
    * Use username attribute specified in global setting
      Use username attribute defined by admin from a global setting
      In case of encrypted assertion/attributes:
      - Decrypt them
      - Check signature if provided to check authenticity of message using IdP's
        public key and SP's private key
      - Loop through attributes to find the username

- CLOUDSTACK-8538:
    * Add new global config for SAML request sig algorithm

- CLOUDSTACK-8539:
    * Add metadata refresh timer task and token expiring
        - Fix domain path and save it to saml_tokens
        - Expire hour old saml tokens
        - Refresh metadata based on timer task
        - Fix unit tests

This closes #489

(cherry picked from commit 20ce346f3a)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>

Conflicts:
	client/WEB-INF/classes/resources/messages_hu.properties
	plugins/hypervisors/xenserver/src/com/cloud/hypervisor/xenserver/resource/wrapper/xenbase/CitrixCheckHealthCommandWrapper.java
	plugins/user-authenticators/saml2/src/org/apache/cloudstack/api/command/SAML2LoginAPIAuthenticatorCmd.java
	ui/scripts/ui-custom/login.js
2015-06-29 12:31:51 +02:00
Laszlo Hornyak e77226b07b added hungarian to the list of localized languages
Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-05-09 08:37:53 +02:00
KC Wang 01864ef77c CLOUDSTACK-6697: bigswitch networking plugin update
1. provide compatibility with the Big Cloud Fabric (BCF) controller
   L2 Connectivity Service in both VPC and non-VPC modes
2. virtual network terminology updates: VNS --> BCF_SEGMENT
3. uses HTTPS with trust-always certificate handling
4. topology sync support with BCF controller
5. support multiple (two) BCF controllers with HA
6. support VM migration
7. support Firewall, Static NAT, and Source NAT with NAT enabled option
8. add VifDriver for Indigo Virtual Switch (IVS)

This closes #151

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-04-09 13:02:02 +05:30
wilderrodrigues 4c9f4fcdd3 Make virtual router id unique per redundant group
Customise the messages showed during VPC restart based on redundancy
Do not show "Make Redundant" option if VPC is already redundant
Show on VPC details if a VPC is redundant
2015-03-16 11:39:58 +01:00
wilderrodrigues e350f1e76f Turn a single VPC into a redundant VPC
- when restarting a VPC, the user can check the option Make Redundant in order to change
    the VPC offering and make it redundant
2015-03-16 11:39:57 +01:00
Rohit Yadav 552f2ae60c CLOUDSTACK-8191: SAML users should have their own accounts
(cherry picked from commit 876c78fe1b)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-02-02 19:58:10 +05:30
Wei Zhou 19e99848c8 CLOUDSTACK-7882: SSH Keypair Creation/Selection in UI
Thanks Ilia Shakitko for the porting and testing.
2014-12-12 14:30:34 +01:00
Wei Zhou dcb7fcc6df CLOUDSTACK-8063: list secondary Ips information in VM response 2014-12-12 09:47:27 +01:00
Daniel Vega 93f8213412 CLOUDSTACK-7915: Remove hard-coded values for Load Balancer algorithms in UI
Signed-off-by: Rajani Karuturi <rajanikaruturi@gmail.com>
(cherry picked from commit ba6dfd8470)
2014-11-25 15:55:44 +05:30
vetrivelc 4e1284147e Fixed incorrect label issue.
Signed-off-by: vetrivelc <vetrivel.chinnasamy@citrix.com>
2014-10-23 13:25:20 -07:00
Mihaela Stoica 0646588fc6 CLOUDSTACK-7645: [UI] Fixing incorrect labels, including instances of "???label.*???"
- removed duplicate entries in dictionary
- added dictionary entries that have been missed during the dictionary split
- added missing entries in messages.properties
- fixed other localization issues
2014-10-02 10:51:52 -07:00
vetrivelc 6a11d099cf Fix Externalization of hard-coded label strings
-Split 'dictionary.jsp' into two files -> 'dictionary.jsp' and
'dictionary2.jsp' -- this is due to JSP file constraints as the
localization object is getting quite long

-Per change above, 'dictionary' object is now split into an additonal
'dictionary2' object, which is merged with the main dict object on page
load

-All new dictionary mappings should be added to 'dictionary2' now.

Signed-off-by: Brian Federle <brian.federle@citrix.com>
2014-09-17 13:59:13 -07:00
Brian Federle 26904d1a2b CLOUDSTACK-5952: Add 'VM IP Address' field to IP detail view 2014-08-26 14:38:55 -07:00
Mihaela Stoica 57f611df16 CLOUDSTACK-6695: Added support to the UI for uploading a chain of certificates
In the "SSL Certificate" dialog we added:
- new field for the root certificate;
- a button to add intermediate certificates if necessary; when this is pressed, a new field, called "Intermediate certificate 1" is added; pressed again, "Intermediate certificate 2" field is added, and so on.

We upload the certificates in order: first the root certificate (with id=1), then the intermediate certificates (with id=2,3,..) and finally the server certificate.
When uploading a certificate, we wait for the upload to be completed successfully and only then we proceed to uploading the next one. If one fails, we report failure and don't continue with the remaining.

Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2014-08-08 10:57:12 -07:00
Rajani Karuturi 32e8fda965 Fixed CLOUDSTACK-6980: UI for RegisterTemplate API does not expose requireshvm parameter 2014-07-28 11:20:04 -07:00
Ritu Sabharwal 628d8e66f7 CLOUDSTACK-6823 : First code drop for Brocade Network plugin to orchestrate Brocade VDX switches for L2 connectivity
Signed-off-by: Hugo Trippaers <htrippaers@schubergphilis.com>
2014-07-23 11:11:18 +02:00
Suresh Ramamurthy 03de9cc335 CLOUDSTACK-6845 : NuageVsp Network plugin
Signed-off-by: Hugo Trippaers <htrippaers@schubergphilis.com>
2014-07-21 10:49:49 +02:00
Mike Tutkowski 4a3b92f665 Fixing an i18n issue related to label.cache.mode 2014-06-30 21:46:01 -06:00
seif 9a27f201b0 Enable primary storage to be added that is based on non-default storage plug-ins 2014-06-26 23:49:23 -06:00
Daan Hoogland c79ab570b0 Revert "CLOUDSTACK-6967: Initial OVM3 drop"
This reverts commit 8a485b9b59.
2014-06-24 10:24:01 +02:00
Funs 8a485b9b59 CLOUDSTACK-6967: Initial OVM3 drop
Signed-off-by: Sebastien Goasguen <runseb@gmail.com>
(cherry picked from commit ed47763e25)

Conflicts:
	api/src/com/cloud/network/NetworkService.java
	api/src/org/apache/cloudstack/api/ApiConstants.java
	api/src/org/apache/cloudstack/api/command/admin/usage/AddTrafficTypeCmd.java
	engine/storage/snapshot/src/org/apache/cloudstack/storage/snapshot/SnapshotObject.java
	plugins/pom.xml
	server/src/com/cloud/network/NetworkServiceImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/test/com/cloud/vpc/MockNetworkManagerImpl.java
	ui/scripts/docs.js
2014-06-23 12:39:10 +02:00
Tim Mackey a8212d9ef4 Cleanup of Xen and XenServer terms. Cloned xen plugin creating a xenserver plugin, then removed xen plugin
Signed-off-by: Tim Mackey <tmackey@gmail.com>
Signed-off-by: Sebastien Goasguen <runseb@gmail.com>
2014-06-07 04:50:23 -04:00
Gabor Apati-Nagy 9fa9e3aaff CLOUDSTACK-6565: [UI] New Zones tab for Templates and ISOs 2014-05-23 10:58:17 -07:00
Jessica Wang 7ae8dc8fbd Revert "CLOUDSTACK-6565: [UI] New Zones tab for Templates and ISOs"
This reverts commit 348fb7bcb6.
2014-05-12 12:26:37 -07:00
Gabor Apati-Nagy 348fb7bcb6 CLOUDSTACK-6565: [UI] New Zones tab for Templates and ISOs 2014-05-12 11:40:24 -07:00
Gabor Apati-Nagy 156b08af5f CLOUDSTACK-6255
UI for supporting region level VPC, distributed routing enabled VPC and
stretched L2 neworks
2014-04-24 15:05:59 -07:00
Mihaela Stoica f3cf85bb62 CLOUDSTACK-6233: Add new tab "GPU" in Host detailView for gpu enabled hosts
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
Signed-off-by: Sanjay Tripathi <sanjay.tripathi@citrix.com>
2014-04-16 16:09:41 +05:30
Brian Federle e35bec515f CLOUDSTACK-6342: UI changes for secondary IP on LB rules
This is front-end only; API call changes still need to be done.
2014-04-15 14:42:11 -07:00
Marcus Sorensen 11f5bdd78d CLOUDSTACK-6191 Add support for specifying volume provisioning
type (thin, sparse, fat) in disk/compute offerings.

Submitted-by: Yoshikazu Nojima <mail@ynojima.net>
Reviewed-by: Marcus Sorensen, Mike Tutowski
2014-04-10 09:23:04 -06:00
Brian Federle 15729f342c CLOUDSTACK-6272: Fix recover/restore VM actions
-Label recoverVirtualMachine as 'Recover VM'
-Label restoreVirtualMachine as 'Reinstall VM'
-Change confirmation text for restoreVirtualMachine to be more explicit
-Change restoreVirtualMachine icon to 'recycle' symbol, to avoid
 confusion with the reboot VM icon
2014-03-21 13:28:52 -07:00
vetrivelc 182c31899b Externalized the hardcodedstrings from UI JAVASCRIPT files. 2014-03-05 14:11:51 -08:00
Gabor Apati-Nagy 477902379e Fix CLOUDSTACK-4563: Initial zone wizard UI label issue 2014-03-03 10:19:03 -08:00
Mihaela Stoica b71f50731c CLOUDSTACK-6196: [UI] Fixed invalid field name (label.dynamically.scalable) on instance details.
Signed-off-by: Mihaela Stoica <mihaela.stoica@citrix.com>
2014-03-03 10:12:51 -08:00
Niels de Vos c02197ae86 Add Gluster to the list of protocols in the Management Server
Gluster can now be used for Primary Storage just like NFS. This change adds the
Gluster protocol to the Management Server:

    Infrastructure -> Primary Storage -> Add Primary Storage

And also add the option to create Primary Storage on Gluster when
following the 'Add Zone' wizard from:

    Infrastructure -> Zones -> Add Zone

Some screenshots and verification:
- http://blog.nixpanic.net/2013/12/using-gluster-as-primary-storage-in.html
2014-02-25 12:08:46 +01:00
vetrivelc e171cb181c Fixed-Hardcoding-Issues 2014-02-14 07:44:54 -08:00
Hugo Trippaers 612a41e3f5 Add UI interface for managing the OpenDaylight provider and controllers.
Fix several bugs in the code related to the api handling.

Conflicts:
	ui/scripts/system.js

ui
2014-01-08 17:08:37 +01:00
Brian Federle 15a860d560 Add missing strings for LDAP section, S3 fields 2013-12-18 13:29:25 -08:00
Brian Federle 34174bbcbb Add missing strings for quiesce VM, SMB fields 2013-12-18 13:10:15 -08:00
Wido den Hollander 1edaa36cc6 CLOUDSTACK-1302: Allow a cache mode per disk offering
Per disk offering the setting none, writeback or writethrough can be set

This allows for both safety and performance for writes.
2013-11-20 17:11:10 +01:00
Rajani Karuturi 917ea33ba9 added LDAP group name label in add account wizard
changed the parameter for domain in api importLdapUser from name to UUID

improved error handling
2013-11-20 13:57:41 +01:00
Mike Tutkowski 10c513a259 CLOUDSTACK-4810: Enable hypervisor snapshots for CloudStack-managed storage (for XenServer and VMware) 2013-11-06 21:02:39 -07:00
Will Stevens 8f8ad3f38e Squashed commit of the Palo Alto Networks firewall integration plugin.
This patch adds a network plugin to support Palo Alto Networks firewall (their appliance and their VM series firewall).

More information in the FS: https://cwiki.apache.org/confluence/display/CLOUDSTACK/Palo+Alto+Firewall+Integration

Features supported are:
- List/Add/Delete Palo Alto service provider
- List/Add/Delete Palo Alto network service offering
- List/Add/Delete Palo Alto network with above service offering
- Add instance to the new network (creates the public IP and private gateway/cidr on the PA as well as the source nat rule)
- List/Add/Delete Ingress Firewall rule
- List/Add/Delete Egress Firewall rule
- List/Add/Delete Port Forwarding rule
- List/Add/Delete Static Nat rule
- Supports Palo Alto Networks 'Log Forwarding' profile globally per device (additional docs to come)
- Supports Palo Alto Networks 'Security Profile Groups' functionality globally per device (additional docs to come)

Knowns limitations:
- Only supports one public IP range in CloudStack.
- Currently not verifying SSL certificates when creating a connection between CloudStack and the Palo Alto Networks firewall.
- Currently not tracking usage on Public IPs.

Signed-off-by: Sheng Yang <sheng.yang@citrix.com>
2013-11-06 10:08:22 -08:00
Rajani Karuturi fdf7639eb8 Fixed some html validation errors
language tag in script is deprecated. used type
<script> tag after </html> is invalid. moved the localized messages dictionary inside html body.
2013-11-05 10:23:32 -08:00
chriscameronv 5ccf3a90ab switch label for VLAN to VLAN/VNI 2013-11-04 14:25:01 -08:00
Brian Federle 25d4333d45 Rename 'socket info' title to 'hypervisors'
Rename 'socket info' title to 'hypervisors' to make it more generic, as
the dashboard section contains hypervisor host counts which are useful
in other contexts.
2013-10-30 11:37:54 -07:00
Brian Federle 7695fff17b Infra. dashboard UI fixes
-Fix totals not showing up

-Increase height of socket info area to fit more hypervisors
2013-10-29 14:55:51 -07:00
Brian Federle bed42deb88 CLOUDSTACK-4908: UI for report CPU sockets
-Adds socket info for hypervisors on infrastructure chart

-Displays # of sockets, and # of hosts

-Currently only dummy data set to 0 for all info
2013-10-29 14:16:25 -07:00
Wei Zhou 059e3beb28 CLOUDSTACK-4505: add ExpungeVM command to expunge a destroyed VM on demand 2013-10-24 11:52:00 +02:00
Brian Federle 43b18025e3 CLOUDSTACK-4758: Add 'root disk size' field
Add 'root disk size' slider to instance wizard UI, under select
template/iso, if the selected template's size is able to be customized.
2013-10-22 11:45:18 -07:00
Wei Zhou 0f976fd328 CLOUDSTAC.K-4923: add missing Network limits in Accounts details page 2013-10-22 15:58:17 +02:00