mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
HBAC rules control who can access what services on what hosts and from where. You can use HBAC to control which users or groups on a source host can access a service, or group of services, on a target host. Since applying HBAC rules implies use of a production environment, this plugin aims to provide simulation of HBAC rules evaluation without having access to the production environment. Test user coming from source host to a service on a named host against existing enabled rules. ipa hbactest --user= --srchost= --host= --service= [--rules=rules-list] [--nodetail] [--enabled] [--disabled] --user, --srchost, --host, and --service are mandatory, others are optional. If --rules is specified simulate enabling of the specified rules and test the login of the user using only these rules. If --enabled is specified, all enabled HBAC rules will be added to simulation If --disabled is specified, all disabled HBAC rules will be added to simulation If --nodetail is specified, do not return information about rules matched/not matched. If both --rules and --enabled are specified, apply simulation to --rules _and_ all IPA enabled rules. If no --rules specified, simulation is run against all IPA enabled rules. EXAMPLES: 1. Use all enabled HBAC rules in IPA database to simulate: $ ipa hbactest --user=a1a --srchost=foo --host=bar --service=ssh -------------------- Access granted: True -------------------- notmatched: my-second-rule notmatched: my-third-rule notmatched: myrule matched: allow_all 2. Disable detailed summary of how rules were applied: $ ipa hbactest --user=a1a --srchost=foo --host=bar --service=ssh --nodetail -------------------- Access granted: True -------------------- 3. Test explicitly specified HBAC rules: $ ipa hbactest --user=a1a --srchost=foo --host=bar --service=ssh --rules=my-second-rule,myrule --------------------- Access granted: False --------------------- notmatched: my-second-rule notmatched: myrule 4. Use all enabled HBAC rules in IPA database + explicitly specified rules: $ ipa hbactest --user=a1a --srchost=foo --host=bar --service=ssh --rules=my-second-rule,myrule --enabled -------------------- Access granted: True -------------------- notmatched: my-second-rule notmatched: my-third-rule notmatched: myrule matched: allow_all 5. Test all disabled HBAC rules in IPA database: $ ipa hbactest --user=a1a --srchost=foo --host=bar --service=ssh --disabled --------------------- Access granted: False --------------------- notmatched: new-rule 6. Test all disabled HBAC rules in IPA database + explicitly specified rules: $ ipa hbactest --user=a1a --srchost=foo --host=bar --service=ssh --rules=my-second-rule,myrule --disabled --------------------- Access granted: False --------------------- notmatched: my-second-rule notmatched: my-third-rule notmatched: myrule 7. Test all (enabled and disabled) HBAC rules in IPA database: $ ipa hbactest --user=a1a --srchost=foo --host=bar --service=ssh --enabled --disabled -------------------- Access granted: True -------------------- notmatched: my-second-rule notmatched: my-third-rule notmatched: myrule notmatched: new-rule matched: allow_all Only rules existing in IPA database are tested. They may be in enabled or disabled disabled state. Specifying them through --rules option explicitly enables them only in simulation run. Specifying non-existing rules will not grant access and report non-existing rules in output. |
||
---|---|---|
.tx | ||
checks | ||
contrib | ||
daemons | ||
doc/examples | ||
install | ||
ipa-client | ||
ipalib | ||
ipapython | ||
ipaserver | ||
selinux | ||
tests | ||
util | ||
.bzrignore | ||
.gitignore | ||
API.txt | ||
autogen.sh | ||
BUILD.txt | ||
Contributors.txt | ||
COPYING | ||
freeipa.spec.in | ||
ipa | ||
ipa-compliance.cron | ||
ipa.1 | ||
ipa.init | ||
lite-server.py | ||
make-doc | ||
make-lint | ||
make-test | ||
make-testcert | ||
makeapi | ||
Makefile | ||
MANIFEST.in | ||
README | ||
setup-client.py | ||
setup.py | ||
TODO | ||
VERSION | ||
version.m4.in |
IPA Server What is it? ----------- For efficiency, compliance and risk mitigation, organizations need to centrally manage and correlate vital security information including: * Identity (machine, user, virtual machines, groups, authentication credentials) * Policy (configuration settings, access control information) * Audit (events, logs, analysis thereof) Since these are not new problems. there exist many approaches and products focused on addressing them. However, these tend to have the following weaknesses: * Focus on solving identity management across the enterprise has meant less focus on policy and audit. * Vendor focus on Web identity management problems has meant less well developed solutions for central management of the Linux and Unix world's vital security info. Organizations are forced to maintain a hodgepodge of internal and proprietary solutions at high TCO. * Proprietary security products don't easily provide access to the vital security information they collect or manage. This makes it difficult to synchronize and analyze effectively. The Latest Version ------------------ Details of the latest version can be found on the IPA server project page under <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: <https://fedorahosted.org/freeipa/wiki/QuickStartGuide> Licensing --------- Please see the file called COPYING. Contacts -------- * If you want to be informed about new code releases, bug fixes, security fixes, general news and information about the IPA server subscribe to the freeipa-announce mailing list at <https://www.redhat.com/mailman/listinfo/freeipa-interest/>. * If you have a bug report please submit it at: <https://bugzilla.redhat.com> * If you want to participate in actively developing IPA please subscribe to the freeipa-devel mailing list at <https://www.redhat.com/mailman/listinfo/freeipa-devel/> or join us in IRC at irc://irc.freenode.net/freeipa