Commit Graph
2696 Commits
Author SHA1 Message Date
Fraser Tweedale bc0c606885 Add CA ACL plugin
Implement the caacl commands, which are used to indicate which
principals may be issued certificates from which (sub-)CAs, using
which profiles.

At this commit, and until sub-CAs are implemented, all rules refer
to the top-level CA (represented as ".") and no ca-ref argument is
exposed.

Also, during install and upgrade add a default CA ACL that permits
certificate issuance for all hosts and services using the profile
'caIPAserviceCert' on the top-level CA.

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

Reviewed-By: Martin Basti <mbasti@redhat.com>
2015-06-11 10:50:31 +00:00
Petr Vobornik ae56ca422d webui: make topology suffices UI readonly
Admins should not modify topology suffices. They are created on
install/upgrade.

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

Reviewed-By: Martin Babinsky <mbabinsk@redhat.com>
2015-06-11 12:21:47 +02:00
Petr Vobornik 99ce650b59 add entries required by topology plugin on update
These entries were not added on upgrade from old IPA servers and on replica
creation.

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

Reviewed-By: Martin Babinsky <mbabinsk@redhat.com>
2015-06-11 12:10:40 +02:00
Petr Vobornik 7cf82cf9aa move replications managers group to cn=sysaccounts,cn=etc,$SUFFIX
https://fedorahosted.org/freeipa/ticket/4302

Reviewed-By: Martin Babinsky <mbabinsk@redhat.com>
2015-06-11 12:10:40 +02:00
Jan Cholasta 81729e22d3 vault: Move vaults to cn=vaults,cn=kra
https://fedorahosted.org/freeipa/ticket/3872

Reviewed-By: David Kupka <dkupka@redhat.com>
2015-06-10 16:17:34 +00:00
Endi S. Dewata 62ef11efad Fixed KRA installation problem.
The ipa-pki-proxy.conf has been modified to optionally require
client certificate authentication for PKI REST services as it's
done in standalone PKI to allow the proper KRA installation.

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

Reviewed-By: Jan Cholasta <jcholast@redhat.com>
2015-06-10 08:37:40 +00:00
Jan Cholasta 46cbe26b51 install: Migrate ipa-replica-install to the install framework
https://fedorahosted.org/freeipa/ticket/4468

Reviewed-By: David Kupka <dkupka@redhat.com>
2015-06-10 07:29:58 +00:00
Jan Cholasta eb959221e1 install: Migrate ipa-server-install to the install framework
https://fedorahosted.org/freeipa/ticket/4468

Reviewed-By: Martin Basti <mbasti@redhat.com>
2015-06-08 15:34:11 +00:00
Jan Cholasta 08229a0c54 install: Move private_ccache from ipaserver to ipapython
https://fedorahosted.org/freeipa/ticket/4468

Reviewed-By: Martin Basti <mbasti@redhat.com>
2015-06-08 15:33:36 +00:00
David Kupka 2acedb2d5d Move CA installation code into single module.
https://fedorahosted.org/freeipa/ticket/4468

Reviewed-By: Jan Cholasta <jcholast@redhat.com>
2015-06-08 06:22:54 +00:00
Petr Vobornik 847b5fd8d2 webui: better error reporting
- ActionDropdownWidget - report error if required action is missing
- report build errors to console

Reviewed-By: Martin Basti <mbasti@redhat.com>
2015-06-05 19:20:25 +02:00
Petr Vobornik cd5fe9b407 webui: don't log in back after logout
Automatic login attempt is initiated by first failed xhr request which
happens in metadata phase.

New phase was added before metadata phase. It interrupts UI load and shows
login page if it's directly after logout(marked in session storage).
Successfull manual login resolves the phase so that metadata phase can
follow.

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

Reviewed-By: Martin Basti <mbasti@redhat.com>
2015-06-05 19:16:49 +02:00
Fraser Tweedale 355b6d416d ipa-pki-proxy: allow certificate and password authentication
ipa-replica-install --setup-ca is failing because the security
domain login attempts password authentication, but the current
ipa-pki-proxy requires certificate authentication.

Set NSSVerifyClient optional to allow both certificate and password
authentication to work.

Reviewed-By: Martin Basti <mbasti@redhat.com>
2015-06-05 19:12:46 +02:00
Petr Vobornik 0138595f58 webui: configurable refresh command
Allows to change the default 'show' command to something different. E.g. 'get'

Reviewed-By: Martin Babinsky <mbabinsk@redhat.com>
2015-06-04 13:20:44 +02:00
Petr Vobornik 538178b53d webui: topology plugin
https://fedorahosted.org/freeipa/ticket/4997

Reviewed-By: Martin Babinsky <mbabinsk@redhat.com>
2015-06-04 13:20:44 +02:00
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