Commit Graph

4808 Commits

Author SHA1 Message Date
Rohit Yadav c11f84d88a ui: show actual backend error, if it's not auth failure
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-07-28 14:59:37 +05:30
Rohit Yadav c8473d2f3a quota: remove unwanted changes
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-07-14 18:04:54 +05:30
Rohit Yadav 82b176b47d quota-ui: fix settings view
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-07-14 17:15:55 +05:30
Rohit Yadav fe422de985 client: fix label and usage
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-07-14 14:08:19 +05:30
Abhinandan Prateek 1b579afaeb CLOUDSTACK-8592: refactoring, cleanup 2015-07-14 11:35:52 +05:30
Rohit Yadav f6e7c52c12 ui/scripts/cloudStack: simplify plugin loop and display check
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-07-14 11:35:52 +05:30
Rohit Yadav dec8928749 ui: Allow plugins to be shown on navigation bar, if they want to
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-07-14 11:35:52 +05:30
Abhinandan Prateek 605239df72 quota: initial commit 2015-07-14 11:35:51 +05:30
Rohit Yadav d2e5bc6649 CLOUDSTACK-8457: SAML UI Dialog fixes to use local $form
This uses local selector to access the DOM elements, the previous commit
would find a global element which is not in the context and fail changing the
element in the opened dialog.

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-07-14 11:31:27 +05:30
Rohit Yadav 3938b43c4d CLOUDSTACK-8457: SAML UI enhancements
Add option to authorize SAML SSO for user when adding user. Appends a domain to
user/account name if global setting is enabled, useful in case of multiple IDP
server. By default the setting is set to false (keep as it is).

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>

This closes #575

(cherry picked from commit 7d11c7bc70)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-07-14 10:23:11 +05:30
Rohit Yadav 5f51a6431d CLOUDSTACK-8622: Reinstate working sessions in browser
- Login is based on sessionkey HttpOnly Cookie
- ApiServlet does login verification using sessionKey from both the request cookies
  and the API parameters. In both cases, if either or both are passed they should
  match the sessionKey stored in the current session of the HttpRequest
- UI: it no longer needs to read or set sessionkey cookie
- UI: it no longer needs to return g_sessionKey value in the API requests, though
  to support a sso mechanism g_sessionKey is still passed in the API is not null
- Secure jsessionid cookie is set to be HttpOnly and Secure
- SAML login should also set HttpOnly cookie before redirecting to UI
- SAML: listIdps & getSPMetadata APIs are readonly now, won't log out a logged in user

Performed tests (login, saml login if applicable, page refreshes, opening
multiple tabs, logout) with following combinations:
- SAML disabled, normal auth as admin, domain-admin and user
- SAML enabled, normal auth as admin, domain-admin and user; and saml sso as
  admin, domain-admin and user

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>

This closes #574
This closes #308

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

Conflicts:
	server/src/com/cloud/api/ApiServlet.java
	utils/src/com/cloud/utils/HttpUtils.java
2015-07-14 10:22:40 +05:30
Rohit Yadav 8bb0a70a56 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

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>

This closes #489

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-06-29 13:49:39 +02:00
Remi Bergsma 9a8ee5664f CLOUDSTACK-6543 Sort domain lists in UI
As recently discussed on the dev list:
This sorts the domain lists based on their path.
Especially handy when having a lot of domains,
like in a public cloud.

Cherry-picked to 4.5 branch since commit exists in 4.4 and master branch.

(cherry picked from commit befa28251d)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-04-17 15:18:16 +02:00
Rohit Yadav 1ef585f9e6 CLOUDSTACK-8364: don't async poll for deleteVolume which is not an async API
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-04-09 12:41:03 +05:30
Rohit Yadav 6f2facfa39 CLOUDSTACK-8231: use hardcoded list of LB algorithms as backup
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-03-27 09:28:16 +05:30
Rohit Yadav 221e429b45 CLOUDSTACK-7915: as a backup use hardcoded LB algorithms in UI
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-03-26 12:45:30 +05:30
Rohit Yadav ca1e5c1690 ui: list all networks
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-03-26 12:45:16 +05:30
vetrivelc fc9a4f66ca CLOUDSTACK-8094: Fixed incorrect label issue.
(cherry picked from commit 4e1284147e)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>

Conflicts:
	ui/dictionary2.jsp
2015-03-23 16:44:06 +05:30
Wei Zhou 5a860fe0ae UI: Fix typo in ui/scripts/configuration.js 2015-03-16 12:50:10 +01:00
Rohit Yadav b79f13ccb5 ui: if session cookie exists, use it to set global session holder and invalidate it
The 19e3c0168e commit breaks SAML login and any
login where redirection is used.

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-03-13 15:01:51 +05:30
Jessica Wang 19e3c0168e CS-18149: UI - no longer store sessionKey in cookie. After
... this change, opening the 2nd browser window (of the same
domain) will show login screen (i.e. user has to enter
credentials again) and will cause the 1st browser window
session timeout.

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-03-13 13:14:42 +05:30
Brian Federle bfcdbeca29 Fix encoding for user account label in header
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-03-13 12:47:32 +05:30
Rohit Yadav 02cadc3fb3 api: avoid sending sensitive data in api response
- UI: use post when updating user
- S3: don't send s3 key in the response
- VPN: don't send preshared key in remoteaccessvpn api response
- Snapshot response should set zone id not volume's device id

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-03-11 16:34:11 +05:30
ramamurtis fde2887476 CLOUDSTACK-8307: UI not showing all Domains, if there are more than 24 domains then the last domain gets cut off on firefox and IE. Added a flag in treeview widget and based on the flag adding css class which will make overflow as scroll instead of the default auto.
Fixes #101

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
(cherry picked from commit 8591383bcc)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-03-09 14:27:23 +05:30
Rohit Yadav 985a61652e CLOUDSTACK-8285: check and update IP capacity states based on allocation state
- Backend should update if state was diabled and now has changed
- UI's fetch latest does not actually fetch latest

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-02-25 16:46:12 +05:30
Pierre-Luc Dion 177c190367 CLOUDSTACK-8188: missing labe:label.password.reset.confirm. removed duplicate label.vlan.id from dictionary2.jsp removed duplicate label.vlan from message.properties 2015-02-19 22:12:32 -05:00
Pierre-Luc Dion 34c75f296b fix CLOUDSTACK-8187 and CLOUDSTACK-8232: missing UI labels 2015-02-19 21:00:33 -05:00
Rohit Yadav 070813a106 CLOUDSTACK-6541: Fix monthly recurring snapshot UI limit, limit to 1-28 days
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-02-19 15:42:12 +05:30
Rohit Yadav a85aea74de CLOUDSTACK-5824: poll for delete snapshot and volume events
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-02-19 15:33:27 +05:30
ramamurtis 206be251ae CLOUDSTACK-8245: Scrolling down the network service providers list from the UI never ends
(cherry picked from commit 2e5c1614ed)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-02-18 12:25:43 +05:30
ramamurtis 4f698b3d4f CLOUDSTACK-8246: Add Cluster - Guest traffic label displayed Incorrectly
(cherry picked from commit d363b2afce)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-02-18 11:23:10 +05:30
Rohit Yadav 1172867df0 CLOUDSTACK-8195: Don't break IdP, return metadata XML
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-02-03 16:59:09 +05:30
Rohit Yadav 876c78fe1b CLOUDSTACK-8191: SAML users should have their own accounts
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-02-02 19:56:25 +05:30
Rohit Yadav 48ec9ac11b CLOUDSTACK-8190: Fix xenserver traffic label for backward compatiblity
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-02-02 16:09:56 +05:30
Anthony Xu d921163ea9 BUG-ID: CLOUDSTACK-8176
UI use xennetworklabel parameter name in zone create Wizards,
   in API, it uses xenservernetworklabel,
   the parameter name doesn't match, cause network name label not setup in CCP
2015-01-23 13:45:28 -08:00
Gabor Apati-Nagy 1998217f6a CLOUDSTACK-7840: UI control tip for 'Add Primary Storage' -> 'Provider' seems wrong
-Removed the invalid help text.

(cherry picked from commit 1f21f399ab)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-01-20 12:02:07 +05:30
Sanjay Tripathi e6620b12e3 CLOUDSTACK-8056: EN: Miss SC and UK keyboard option for VMware hypervisor when register a template.
(cherry picked from commit 4d78703522)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-01-20 10:22:42 +05:30
René Moser 9a677595fa CLOUDSTACK-8154: fix UI for API change
Signed-off-by: René Moser <mail@renemoser.net>
(cherry picked from commit 07d96aab84)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-01-14 16:36:08 +05:30
Jessica Wang 744c1a1b03 CLOUDSTACK-7383: UI > Instances menu > detail view > TakeSnapshot action should be hidden when VM's hypervisor is LXC. 2015-01-02 14:06:28 -08:00
Jessica Wang 775e4d34c3 CLOUDSTACK-8141: UI > use Project view > Infrastructure > zone > physical network > Public traffic type > do not pass projectId to listNetworks API. 2015-01-02 11:33:57 -08:00
Jessica Wang 85e88e9cbc CLOUDSTACK-8139: UI > create compute offering > server-side only supports one single host tag instead of multiple host tags. So, change UI to take in only one single host tag instead of multiple host tags in create compute dialog. 2014-12-31 16:21:13 -08:00
Jessica Wang a29a1e0600 CLOUDSTACK-8102: UI > Quick Install Wizard > update admin > should encode parameter value once instead of twice before sending it to API. 2014-12-19 15:41:42 -08:00
Jessica Wang 48e996f43e CLOUDSTACK-6666: UI > network > VPC > Router > Public IP Addresses > IP Address detailView > Configuration tab > Port Forwarding > Select VM screen > implement keyword search. 2014-12-19 14:26:42 -08:00
Jessica Wang a771c7d496 CLOUDSTACK-6666: UI > network > VPC > Router > Public IP Addresses > IP Address detailView > Configuration tab > Load Balancing > Select VM screen > implement keyword search. 2014-12-19 14:25:32 -08:00
Jessica Wang 65c742cd66 CLOUDSTACK-6744 > UI > zone wizard > baremetal hypervisor > support EIP ELB feature. 2014-12-18 18:13:14 -08:00
Jessica Wang 11fa48108f CLOUDSTACK-8075: UI > Instances menu > Add Instance > Select template/ISO > "shared" tab > select a shared template, click Next button => fix error "unable to find matched template object". 2014-12-17 10:58:43 -08:00
Jessica Wang 20777ec3b4 CLOUDSTACK-8075: UI > Instances menu > Add Instance > Select template/ISO > add a new tab "shared" which will list shared templates/ISOs when being clicked. 2014-12-16 16:15:34 -08:00
Brian Federle e7a96fde79 CLOUDSTACK-8075: Front-end support for shared templates/ISOs 2014-12-16 15:16:30 -08:00
Jessica Wang 6a8dcf5f20 CLOUDSTACK-8076: UI > Templates menu > Template/ISO > "Filter by" dropdown > add a new option, "shared", which will list shared templates when being selected. 2014-12-16 14:38:50 -08:00
Jessica Wang 0af15e4a2c CLOUDSTACK-8047: UI > zone wizard > add primary storage step: (zone-wide-primary-storage) fix a bug that failed to get cluster's hypervisor value if previous step (e.g. add host step) has ever failed. 2014-12-08 15:18:01 -08:00