Go to file
Alexander Bokovoy 1f82d281cc service delegation: allow to add and remove host principals
Service delegation rules and targets deal with Kerberos principals.
As FreeIPA has separate service objects for hosts and Kerberos services,
it is not possible to specify host principal in the service delegation
rule or a target because the code assumes it always operates on Kerberos
service objects.

Simplify the code to add and remove members from delegation rules and
targets. New code looks up a name of the principal in cn=accounts,$BASEDN
as a krbPrincipalName attribute of an object with krbPrincipalAux object
class. This search path is optimized already for Kerberos KDC driver.

To support host principals, the specified principal name is checked to
have only one component (a host name). Service principals have more than
one component, typically service name and a host name, separated by '/'
sign. If the principal name has only one component, the name is
prepended with 'host/' to be able to find a host principal.

The logic described above allows to capture also aliases of both
Kerberos service and host principals. Additional check was added to
allow specifying single-component aliases ending with '$' sign. These
are typically used for Active Directory-related services like databases
or file services.

RN: service delegation rules and targets now allow to specify hosts as
RN: a rule or a target's member principal.

Fixes: https://pagure.io/freeipa/issue/8289
Signed-off-by: Alexander Bokovoy <abokovoy@redhat.com>
Reviewed-By: Rob Crittenden <rcritten@redhat.com>
Reviewed-By: Christian Heimes <cheimes@redhat.com>
2020-05-14 21:47:17 +03:00
.copr Adding auto COPR builds 2019-12-14 14:20:34 +02:00
.github Let GH auto-notify and auto-close stale PRs 2020-05-06 20:17:01 +02:00
asn1 fix minor spelling mistakes 2017-05-19 09:52:46 +02:00
client Make api.env.mode consistent 2020-05-14 17:55:59 +02:00
contrib lite-setup: configure lite-server test env 2020-01-24 08:35:47 -05:00
daemons kdb: fix memory handling in ipadb_find_principal 2020-05-08 09:37:37 +03:00
doc Require Sphinx >2.1 2020-04-29 12:36:34 +02:00
init Move ipa's systemd tmpfiles from /var/run to /run 2018-10-15 10:04:33 +02:00
install WebUI: use python3-rjsmin to minify JavaScript files 2020-05-12 09:50:28 +02:00
ipaclient Address issues found by new pylint 2.5.0 2020-04-30 09:41:41 +02:00
ipalib Fix detection logic for api.env.in_tree 2020-05-14 18:16:20 +02:00
ipaplatform Add pytest.skip_if_container() 2020-05-06 09:14:29 +02:00
ipapython Disable password schema update on LDAP bind 2020-05-11 14:36:39 +02:00
ipaserver service delegation: allow to add and remove host principals 2020-05-14 21:47:17 +03:00
ipasphinx Create ipasphinx package for Sphinx plugins 2020-04-28 20:03:21 +02:00
ipatests service delegation: allow to add and remove host principals 2020-05-14 21:47:17 +03:00
po po: fix LINGUAS to use whitespace separation 2020-03-25 14:44:52 +01:00
pypi Cleanup shebang and executable bit 2018-07-05 19:46:42 +02:00
selinux Fix various OpenDNSSEC 2.1 issues 2020-04-21 21:37:06 +02:00
util CVE-2020-1722: prevent use of too long passwords 2020-04-14 12:36:01 +03:00
.freeipa-pr-ci.yaml Making nigthly test definition editable by FreeIPA's contributors 2018-07-27 09:50:06 +02:00
.git-commit-template git-commit-template: update ticket url to use pagure.io instead of fedorahosted.org 2017-03-28 13:10:08 +02:00
.gitignore Improve Sphinx building and linting 2020-04-22 09:47:14 +02:00
.lgtm.yml WebUI: use python3-rjsmin to minify JavaScript files 2020-05-12 09:50:28 +02:00
.mailmap Update mailmap 2019-04-24 09:47:31 +02:00
.tox-install.sh Avoid use of '/tmp' for pip operations 2019-07-16 13:23:21 +03:00
.wheelconstraints.in Use pylint 1.7.5 with fix for bad python3 import 2017-12-19 13:28:06 +01:00
ACI.txt Add Authentication Indicator Kerberos ticket policy options 2019-11-21 11:13:12 -05:00
API.txt Allow rename of a host group 2020-03-31 09:21:37 +03:00
autogen.sh build tweaks - use automake's foreign mode, avoid creating empty files to satisfy gnu mode - run autoreconf -f to ensure that everything matches 2010-11-29 11:39:55 -05:00
BUILD.txt Bootstrap Sphinx documentation 2020-03-21 07:40:33 +02:00
CODE_OF_CONDUCT.md Changing Django's CoC to reflect FreeIPA CoC 2018-03-26 09:51:25 +02:00
configure.ac Create ipasphinx package for Sphinx plugins 2020-04-28 20:03:21 +02:00
Contributors.txt Update contributors 2019-11-12 20:49:18 +02:00
COPYING Change FreeIPA license to GPLv3+ 2010-12-20 17:19:53 -05:00
COPYING.openssl Add a clear OpenSSL exception. 2015-02-23 16:25:54 +01:00
freeipa.doap.rdf Adding modified DOAP file 2018-06-22 11:02:40 -04:00
freeipa.spec.in WebUI: use python3-rjsmin to minify JavaScript files 2020-05-12 09:50:28 +02:00
ipa.in Replace PYTHONSHEBANG with valid shebang 2019-06-24 09:35:57 +02:00
ipasetup.py.in Address inconsistent-return-statements 2018-11-13 13:37:58 +01:00
make-doc Make an ipa-tests package 2013-06-17 19:22:50 +02:00
make-test Use pytest conftest.py and drop pytest.ini 2017-01-05 17:37:02 +01:00
makeaci.in Replace PYTHONSHEBANG with valid shebang 2019-06-24 09:35:57 +02:00
makeapi.in Replace PYTHONSHEBANG with valid shebang 2019-06-24 09:35:57 +02:00
Makefile.am Fix make devcheck 2020-05-06 09:13:32 +02:00
Makefile.python.am Add PYTHON_INSTALL_EXTRA_OPTIONS and --install-layout=deb 2017-03-15 13:48:23 +01:00
Makefile.pythonscripts.am ipa-scripts: fix all ipa command line scripts to operate with -I 2019-09-19 10:44:09 -04:00
makerpms.sh Fix unnecessary usrmerge assumptions 2019-04-17 13:56:05 +02:00
pylint_plugins.py pylint: Synchronize pylint plugin to ipatests code 2020-02-12 18:08:32 +02:00
pylintrc Address issues found by new pylint 2.5.0 2020-04-30 09:41:41 +02:00
README.md README: Update link to freeipa-devel archive 2019-03-20 17:32:43 +01:00
server.m4 Use /run and /run/lock instead of /var 2020-04-15 18:48:50 +02:00
tox.ini Reconfigure pycodestyle 2020-05-05 10:42:46 +02:00
VERSION.m4 Allow rename of a host group 2020-03-31 09:21:37 +03:00
zanata.xml Zanata: exlude testing ipa.pot file 2016-11-21 14:47:47 +01:00

FreeIPA Server

FreeIPA allows Linux administrators to centrally manage identity, authentication and access control aspects of Linux and UNIX systems by providing simple to install and use command line and web based management tools.

FreeIPA is built on top of well known Open Source components and standard protocols with a very strong focus on ease of management and automation of installation and configuration tasks.

FreeIPA can seamlessly integrate into an Active Directory environment via cross-realm Kerberos trust or user synchronization.

Benefits

FreeIPA:

  • Allows all your users to access all the machines with the same credentials and security settings
  • Allows users to access personal files transparently from any machine in an authenticated and secure way
  • Uses an advanced grouping mechanism to restrict network access to services and files only to specific users
  • Allows central management of security mechanisms like passwords, SSH Public Keys, SUDO rules, Keytabs, Access Control Rules
  • Enables delegation of selected administrative tasks to other power users
  • Integrates into Active Directory environments

Components

The FreeIPA project provides unified installation and management tools for the following components:

Project Website

Releases, announcements and other information can be found on the IPA server project page at http://www.freeipa.org/ .

Documentation

The most up-to-date documentation can be found at http://freeipa.org/page/Documentation .

Quick Start

To get started quickly, start here: http://www.freeipa.org/page/Quick_Start_Guide

For developers

Licensing

Please see the file called COPYING.

Contacts