Commit Graph

2681 Commits

Author SHA1 Message Date
Petr Vobornik
55bf33cce2 webui: make usage of --all in details facet optional
refactoring for domains level UI
https://fedorahosted.org/freeipa/ticket/4997

Reviewed-By: Martin Babinsky <mbabinsk@redhat.com>
2015-06-04 13:20:44 +02:00
Petr Vobornik
ed78dcfa3a webui: use command_dialog as a base class for password dialog
refactoring for:
https://fedorahosted.org/freeipa/ticket/4997

Reviewed-By: Martin Babinsky <mbabinsk@redhat.com>
2015-06-04 13:20:44 +02:00
Petr Vobornik
604331f0be webui: IPA.command_dialog - a new dialog base class
refactoring for:

https://fedorahosted.org/freeipa/ticket/4997

Reviewed-By: Martin Babinsky <mbabinsk@redhat.com>
2015-06-04 13:20:44 +02:00
Fraser Tweedale
979947f7f2 Add usercertificate attribute to user plugin
Part of: https://fedorahosted.org/freeipa/tickets/4938

Reviewed-By: Martin Basti <mbasti@redhat.com>
2015-06-04 08:27:33 +00:00
Fraser Tweedale
b24fe0eb73 Import included profiles during install or upgrade
Add a default service profile template as part of FreeIPA and format
and import it as part of installation or upgrade process.

Also remove the code that modifies the old (file-based)
`caIPAserviceCert' profile.

Fixes https://fedorahosted.org/freeipa/ticket/4002

Reviewed-By: Martin Basti <mbasti@redhat.com>
2015-06-04 08:27:33 +00:00
Fraser Tweedale
300b74fc7f Add certprofile plugin
Add the 'certprofile' plugin which defines the commands for managing
certificate profiles and associated permissions.

Also update Dogtag network code in 'ipapython.dogtag' to support
headers and arbitrary request bodies, to facilitate use of the
Dogtag profiles REST API.

Part of: https://fedorahosted.org/freeipa/ticket/57

Reviewed-By: Martin Basti <mbasti@redhat.com>
2015-06-04 08:27:33 +00:00
Fraser Tweedale
273a297e97 ipa-pki-proxy: provide access to profiles REST API
Part of: https://fedorahosted.org/freeipa/ticket/57

Reviewed-By: Martin Basti <mbasti@redhat.com>
2015-06-04 08:27:33 +00:00
Fraser Tweedale
3d15f2966b Add schema for certificate profiles
The certprofile object class is used to track IPA-managed
certificate profiles in Dogtag and store IPA-specific settings.

Part of: https://fedorahosted.org/freeipa/ticket/57

Reviewed-By: Martin Basti <mbasti@redhat.com>
2015-06-04 08:27:33 +00:00
Rob Crittenden
a92328452d Add plugin to manage service constraint delegations
Service Constraints are the delegation model used by
ipa-kdb to grant service A to obtain a TGT for a user
against service B.

https://fedorahosted.org/freeipa/ticket/3644

Reviewed-By: Martin Basti <mbasti@redhat.com>
2015-06-03 09:47:40 +00:00
Martin Basti
943c539122 ULC: fix: upgrade for stage Stage User Admins failed
Upgrade failed because entry 'dn: cn=Stage User
Administrators,cn=privileges,cn=pbac,$SUFFIX' doesnt exist.

Now upgrade will create the privilege if it does not exist.

https://fedorahosted.org/freeipa/ticket/3813

Reviewed-By: David Kupka <dkupka@redhat.com>
2015-06-02 13:50:19 +00:00
Jan Cholasta
3cb42e33c0 install: Move ipa-replica-install code into a module
https://fedorahosted.org/freeipa/ticket/4468

Reviewed-By: Martin Basti <mbasti@redhat.com>
2015-05-29 08:00:33 +00:00
Jan Cholasta
6dabe6ebb2 install: Move ipa-server-install code into a module
https://fedorahosted.org/freeipa/ticket/4468

Reviewed-By: Martin Basti <mbasti@redhat.com>
2015-05-29 08:00:33 +00:00
Tomas Babej
f3010498af Add Domain Level feature
https://fedorahosted.org/freeipa/ticket/5018

Reviewed-By: Jan Cholasta <jcholast@redhat.com>
Reviewed-By: Petr Vobornik <pvoborni@redhat.com>
2015-05-26 11:59:47 +00:00
Ludwig Krispenz
4bcc2546d5 install part - manage topology in shared tree
https://fedorahosted.org/freeipa/ticket/4302

Reviewed-By: Petr Vobornik <pvoborni@redhat.com>
2015-05-26 10:43:50 +02:00
Ludwig Krispenz
25bf0c6e78 ds plugin - manage replication topology in the shared tree
Implementation of ticket: https://fedorahosted.org/freeipa/ticket/4302
        Design page: http://www.freeipa.org/page/V4/Manage_replication_topology

Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-26 10:40:29 +02:00
Tomas Babej
c5f319d3e8 replica-manage: Properly delete nested entries
Bad ordering of LDAP entries during replica removal resulted in a failure to
delete replica and its services from cn=masters,cn=ipa,cn=etc,$SUFFIX. This
patch enforces the correct ordering of entries resulting in proper removal of
services before the host entry itself.

https://fedorahosted.org/freeipa/ticket/5019

Reviewed-By: Martin Babinsky <mbabinsk@redhat.com>
2015-05-26 09:52:45 +02:00
Martin Kosek
d0a330aa1c Fix typo in ipa-server-upgrade man page 2015-05-26 07:53:44 +02:00
Martin Basti
027515230a Server Upgrade: Move code from ipa-upgradeconfig to separate module
This also prevent the script ipa-upgradeconfig execute upgrading.
Upgrade of services is called from ipa-server-upgrade

https://fedorahosted.org/freeipa/ticket/4904

Reviewed-By: Jan Cholasta <jcholast@redhat.com>
2015-05-25 16:34:44 +00:00
Martin Babinsky
6a4b428120 merge KRA installation machinery to a single module
This is a prerequisite to further refactoring of KRA install/uninstall
functionality in all IPA install scripts.

https://fedorahosted.org/freeipa/ticket/4468

Reviewed-By: Jan Cholasta <jcholast@redhat.com>
2015-05-25 16:23:32 +00:00
Endi S. Dewata
fde21adcbd Added vault plugin.
A new plugin has been added to manage vaults. Test scripts have
also been added to verify the functionality.

https://fedorahosted.org/freeipa/ticket/3872

Reviewed-By: Jan Cholasta <jcholast@redhat.com>
2015-05-25 06:17:09 +00:00
Martin Basti
98e4c6d6de Uid uniqueness: fix: exclude compat tree from uniqueness
Without this commit it is not possible to move user to staged area.

Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-22 15:41:41 +02:00
Petr Vobornik
80251e772b webui: datetime widget with datepicker
Datetime widget was transform from a simple text input to 3 separate inputs:
- date with bootstrap-datepicker
- hour
- minute

e.g.:
 Validity end    [ 2015-05-18     ] [23]:[01] UTC
       Vendor    [ abc                            ]

Editation of seconds is not supported.

https://fedorahosted.org/freeipa/ticket/4347

Reviewed-By: Martin Babinsky <mbabinsk@redhat.com>
2015-05-20 14:36:09 +02:00
Petr Vobornik
9e3320403a webui: add boostrap-datepicker files
https://fedorahosted.org/freeipa/ticket/4347

Reviewed-By: Martin Babinsky <mbabinsk@redhat.com>
2015-05-20 14:36:09 +02:00
Petr Vobornik
2361ac11ad webui: option to not create user private group
Web UI wa not able to create a user without a private group.

New field added to user adder dialog to allow that.

https://fedorahosted.org/freeipa/ticket/4986

Reviewed-By: Martin Basti <mbasti@redhat.com>
Reviewed-By: Ales 'alich' Marecek <amarecek@redhat.com>
2015-05-20 14:18:17 +02:00
Petr Vobornik
9b5655607d webui: fix empty table border in Firefox
Firefox suffers from: https://bugzilla.mozilla.org/show_bug.cgi?id=409254

This is a workaround to fix it.

Reviewed-By: Martin Babinsky <mbabinsk@redhat.com>
2015-05-20 14:16:42 +02:00
Petr Vobornik
7ddcff3ef7 webui: prefer search facet's deleter dialog
Deleter dialog in search facet is now chosen in order as follows:
- facet's, defined as spec, e.g.:
  deleter_dialog: { $factory: IPA.user.deleter_dialog }
- entity's, the same but it entity spec
- default, which is IPA.search_deleter_dialog

Previous didn't allow to override entity dialog with facet one and
also definition by spec was not allowed.

Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
99d282d38d webui: stageusers, display page elements based on user state
Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
52647285f6 webui: update stageuser/user pages based on action in diffrent user search page
Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
64e87d5e34 webui: extend user deleter dialog with --permanent and --preserve options
Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
14525598f9 webui: stageuser plugin
Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
bf7ee6eeec webui: facet policies for all facets
Now also facets other than details facet can use facet policies.

Facet policies purpose is to extend facets behavior without
overriding base class. This shared behavior could be reused in
several other facets which may have completely different
base classes.

Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
cae2df274a webui: allow to hide facet tabs or sidebar
Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
8d8b56d135 webui: allow to replace facet tabs with sidebar
basically implementation of #4625 but atm there is no time to properly
test #4625 in the whole UI, therefore, it will be limited only to
active/stage/preserved user search page.

Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
435f9331c6 webui: facet groups widget
Refactoring of facet groups. This new widget has an html structure which
could be used for current facet tabs but also for PatternFly two column
layout with either accordion or nav-category
- https://www.patternfly.org/wp-content/uploads/patternfly/tests/form.html
- https://www.patternfly.org/wp-content/uploads/patternfly/tests/tab.html

Will be useful for #4625.

Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
3c2a8b408e webui: custom facet groups in a facet
Facets use to inherit facet groups from entity. There was no option to define
cross-entity facet groups for different facets which belong one entity.

In other words it was not possible to have 'user search' and 'stage user search'
tab in one facet group.

Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
17aafc36b4 webui: metadata validator min and max value overrides
Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
6a2b486e50 webui: navigation: unique names on entity facet menu items
Fixes issue where it is not possible to define under the same parent:
  { entity: 'bar', facet: 'baz' }
  { entity: 'foo', facet: 'baz' }

Error reporting of invalid menu item names was improved.

Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
8f60139520 webui: navigation: do not remember selected childs of menu item
Remove behavior which navigated to previously selected child if navigating
to its parent.

It makes navigation more consistent.

Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
6bcb90ef36 webui: prefer entity fallback in menu item select
While selecting menu item based on a facet which have an entity defined,
prefer entity fallback over facet name fallback.

It solves an issue which appears when a menu item of a different entity
has the same facet name specified. In such case this menu item was selected
instead of the desired one.

E.g.: there are menu items:
  { entity: 'foo' }
  { entity: 'bar', facet: 'search'}

Showing a foo's search facet resulted in selecting
{ entity: 'bar', facet: 'search'} item.

Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
2be8eeb04f webui: entity menu items navigate to main entity facet
I.e. remove memory from bare entity navigation

Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
ae62bd6914 webui: entity facets in facet registry
All entity facets are automatically registered as a new type in
reg.facet.

The type name is: <entity_name>_<facet_name>

The name of facets is kept same, mainly to support the same url routes.

This change allows to get facet instance by calling, e.g.:
  reg.facet.get('user_details')

It allows to make declarative links to facet which are not yet instantiated.

Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
de374a0d3a webui: register construction spec based on existing spec
Useful for declarative inheritance. E.g. base new facet on details
facet with all registered preops and default spec object.

Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
c352616ac9 webui: declare search command options in search facet
A search facet could be defined with an option which is always applied
during entity-find command on facet refresh.

e.g.
  ipa user-find --preserved

Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
69bc4f4955 webui: rename IPA.user_* to IPA.user.*
Or in other words, move all objects which belong to user module to the module.
Therefore they no longer pollutes the main 'IPA' module.

Therefore:
  require('freeipa/ipa').user == require('freeipa/user')

Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Petr Vobornik
a4c0f780b7 webui: update patternfly to v1.1.4
Not all functionality is available. Mostly because IPA doesn't require them yet.

Missing: bootstrap combobox, datatables js, PF font with icons, spinner for old IEs
Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
2015-05-20 14:04:10 +02:00
Martin Basti
ab69a0b1a7 Pylint: fix false positive warning for domain
Reviewed-By: Petr Vobornik <pvoborni@redhat.com>
2015-05-19 19:14:58 +02:00
Martin Basti
ae9c3e2dce DNS install: extract DNS installer into one module
This is required modification to be able move to new installers.

DNS subsystem will be installed by functions in this module in each of
ipa-server-install, ipa-dns-install, ipa-replica-install install
scripts.

https://fedorahosted.org/freeipa/ticket/4468

Reviewed-By: Jan Cholasta <jcholast@redhat.com>
2015-05-19 14:21:31 +00:00
Martin Babinsky
7ff7b1f533 move IPA-related http runtime directories to common subdirectory
When both 'mod_auth_kerb' and 'mod_auth_gssapi' are installed at the same
time, they use common directory for storing Apache ccache file. Uninstallation
of 'mod_auth_kerb' removes this directory leading to invalid CCache path for
httpd and authentication failure.

Using an IPA-specific directory for credential storage during apache runtime
avoids this issue.

https://fedorahosted.org/freeipa/ticket/4973

Reviewed-By: David Kupka <dkupka@redhat.com>
2015-05-19 12:59:18 +00:00
Martin Basti
96f6d6ca09 DNSSEC: update OpenDNSSEC KASP configuration
* remove unneeded parts
* increase KSK key length to 3072
* increase KSK key lifetime to 2 years (see NIST SP 800-81-2 section 11.2)

Update is not required, as template contains just recommended values
which should by reviewed by administrators.

https://fedorahosted.org/freeipa/ticket/4657

Reviewed-By: Petr Spacek <pspacek@redhat.com>
2015-05-19 12:50:56 +00:00
Martin Basti
fbdfd688b9 Server Upgrade: Fix uniqueness plugins
Due previous changes (in master branch only) the uniqueness plugins
became misconfigured.

After this patch:
* whole $SUFFIX will be checked by unique plugins
* just staged users are exluded from check

This reverts some changes in commit
52b7101c11

Since 389-ds-base 1.3.4.a1 new attribute 'uniqueness-exclude-subtrees'
can be used.

https://fedorahosted.org/freeipa/ticket/4921

Reviewed-By: Martin Babinsky <mbabinsk@redhat.com>
2015-05-19 12:45:41 +00:00