Commit Graph

1302 Commits

Author SHA1 Message Date
Pavel Zuna
74ad4f3d7d Fix updating of DNS records by the host plugin.
Fix #799
2011-01-18 12:46:53 -05:00
Pavel Zuna
687324c193 Remove SOA maximum parameters from DNS zone.
There's no such thing as "maximum" in SOA record RDATA format
according to RFC 1035 and there's also no such attribute in
the schema.

Fix #788
2011-01-18 12:46:53 -05:00
Pavel Zuna
2bb944bea7 Fix crash when building DN of host with name ending with period.
Fix #797
2011-01-18 12:46:53 -05:00
Jan Zeleny
01f907c01b Move HBAC services and service groups to cn=hbac
https://fedorahosted.org/freeipa/ticket/762
2011-01-18 11:48:57 -05:00
Jan Zeleny
38bce669da Modified description of nsaccountlock attribute
The original one was misleading, giving the value exactly opposite
meaning than it actually was.

https://fedorahosted.org/freeipa/ticket/741
2011-01-18 10:03:55 -05:00
Rob Crittenden
886e417fd7 Set the default Int maxvalue to the maximum XML-RPC can handle.
Also handle marshalling errors thrown by xmlrpclib more gracefully.

ticket 770
2011-01-18 10:03:55 -05:00
Simo Sorce
25cfddcbe1 Move sudo related data all under cn=sudo
Fixes: https://fedorahosted.org/freeipa/ticket/773
2011-01-17 11:46:45 -05:00
Adam Young
285ee9db0c Details to Settings
Using I18N messages for most of the details
2011-01-15 04:42:49 +00:00
Rob Crittenden
84ff4ca0f1 Don't require or create the log dirs if we're just validating the API.
Fixes an error displayed in the automated builds, plus we don't want
a Makefile messing around with our homedir.
2011-01-14 17:26:49 -05:00
Jakub Hrozek
12c67b99e0 Rename DNS2 to DNS 2011-01-14 17:26:48 -05:00
Jakub Hrozek
3711261802 Port installer and host plugin to the new DNS plugin
* move ipa dns-resolve to the new plugin
* port the installer and the host plugin to the new interface
* remove the old plugin
2011-01-14 17:26:48 -05:00
Rob Crittenden
c69d8084c1 Add API version and have server reject incompatible clients.
This patch contains 2 parts.

The first part is a small utility to create and validate the current
API. To do this it needs to load ipalib which on a fresh system
introduces a few problems, namely that it relies on a python plugin
to set the default encoding to utf8. For our purposes we can skip that.
It is also important that any optional plugins be loadable so the
API can be examined.

The second part is a version exchange between the client and server.
The version has a major and a minor version. The major verion is
updated whenever existing API changes. The minor version is updated when
new API is added. A request will be rejected if either the major versions
don't match or if the client major version is higher than then server
major version (though by implication new API would return a command not
found if allowed to proceed).

To determine the API version of the server from a client use the ping
command.

ticket 584
2011-01-14 14:26:22 -05:00
Simo Sorce
5549dca50e Move Virtual Operations container under cn=etc
Fixes: https://fedorahosted.org/freeipa/ticket/759
2011-01-14 14:06:56 -05:00
Gowrishankar Rajaiyan
74d8a3c487 Fixed typo in ipa help service 2011-01-14 09:53:19 -05:00
Rob Crittenden
6785283568 python-ldap fails gloriously if the search time limit is 0. Don't allow it.
Don't allow the time limit to be set in the API. Also add a failsafe
in the ldap driver because such bad things happen if this value is 0.
I think it literally spends 0 time on the request and just returns
immediately.

ticket 752
2011-01-14 09:48:07 -05:00
Endi S. Dewata
00b3984e5a Support for str in StrEnum.
The StrEnum class has been modified to accept str value and convert
it into unicode. This is to fix encoding issue on F14.
2011-01-13 21:48:07 -05:00
Jakub Hrozek
f67d3cd32d Use correct option name in host plugin 2011-01-12 17:21:27 -05:00
Jakub Hrozek
404ded0e0a Fixes for the DNS plugin
https://fedorahosted.org/freeipa/ticket/730
2011-01-12 17:21:27 -05:00
Jr Aquino
1ea31a0cff fix sudorule runas user/groups https://fedorahosted.org/freeipa/ticket/570 2011-01-12 11:40:47 -05:00
Rob Crittenden
c7789199f9 Fix output of failed managedby hosts, allow a host to manage itself.
The output problem was a missing label for failed managedby.

This also fixes a call to print_entry that was missing the flags argument.

Add a flag to specify whether a group can be a member of itself, defaulting
to False.

ticket 708
2011-01-11 10:23:31 -05:00
Rob Crittenden
06179dc105 Exit if a DNS A or AAAA record doesn't exist for the replica we are preparing.
Without this it is possible to prepare a replica for a host that doesn't
exist in DNS. The result when this replica file is installed is that
replication will fail because the master won't be able to communicate
to the replica by name.

ticket 680
2011-01-11 10:22:33 -05:00
Pavel Zuna
1af89d0daa Retype (when cloning) Flag parameters to Bool for search commands.
Flag parameters are always autofill by definition, causing unexpected
search results. This patch retypes them to Bool for search commands,
so that users have to/can enter the desired value manually.

Ticket #689
Ticket #701
2011-01-10 12:07:19 -05:00
Rob Crittenden
6f58f38748 Display the entries that failed when deleting with --continue.
We collected the failures but didn't report it back. This changes the
API of most delete commands so rather than returning a boolean it returns
a dict with the only current key as failed.

This also adds a new parameter flag, suppress_empty. This will try to
not print values that are empty if included. This makes the output of
the delete commands a bit prettier.

ticket 687
2011-01-10 10:32:10 -05:00
Rob Crittenden
0a79836082 Setting an empty set of target attributes should raise an exception.
It is possible to create an ACI with attributes and then try to set that
to None via a mod command later. We need to catch this and raise an exception.

If all attributes are set to None in an aci then the attr target is removed
from the ACI. This could result in an illegal ACI if there are no other
targets. Having no targets is a legal state, just not a legal final state.

ticket 647
2011-01-10 10:27:23 -05:00
Pavel Zuna
38c2656829 Fix 'ipa help permissions'; add 'dns' in allowed types. 2011-01-07 14:57:32 -05:00
Jan Zeleny
b6eada0802 Initial grouping of ipalib plugins for ipa help
This patch makes one group for all HBAC plugins and one group for all
sudo plugins.
2011-01-07 09:42:41 -05:00
Jan Zeleny
6214af8a8d Changed concept of ipa help
The concept is now following:
topic:    either a module or a group of modules containing registered
          commands. All these commands will usually handle common entity
          type (e.g. hbac rules)
subtopic: each topic can have a number of subtopics. In this case topic
          is a group of modules and each module represents a subtopic.

grouping modules to topics is possible by assigning a 2-tuple to module
variable:

topic = ('topic-name','topic description')

The topic description has to be the same in all modules in the topic.
These are examples of commands now available in IPA help:

ipa help              - display a list of all topics
ipa help hbac         - display help for hbac topic
ipa help hbacrule     - display help for a subtopic of hbac
ipa help hbacrule-add - display help for a particular command

https://fedorahosted.org/freeipa/ticket/410
2011-01-07 09:42:38 -05:00
Jan Zeleny
bfc338d81c Rename hbac module to hbacrule
The renaming follows previous discussion on mailing list and it leads to
name compatibility with other plugins (e.g. sudorule). It is also
necessary for following changes in ipa help.
2011-01-07 09:42:34 -05:00
Jan Zeleny
1fb2ccf105 Rename --ipaddr option of host-add command
The option is renamed to --ip-address to be consistent with
ipa-replica-prepare.

https://fedorahosted.org/freeipa/ticket/655
2011-01-07 05:09:14 -05:00
Adam Young
b730eb356f facet nesting
correctly nest the facet groups
change 'parent' to 'member of' for facet group
2011-01-07 04:44:56 -05:00
Jr Aquino
cbe02578db fixed typo for description usage example https://fedorahosted.org/freeipa/ticket/704 2011-01-06 11:13:23 -05:00
Martin Kosek
39a9361210 Handle error messages during Host operations
Only a generic error message were displayed when a non-existing
host was passed to host-del or host-disable operations.

This patch adds catching these generic exceptions and raising
new exceptions with the correct error message.

https://fedorahosted.org/freeipa/ticket/303
2011-01-06 11:10:31 -05:00
Pavel Zuna
d6d579ead4 Improve filtering of enrollments search results.
This is required for effective filtering of enrollments search
results in the webUI and also gives an edge to the CLI.

After this patch, each LDAPObject can define its relationships
to other LDAPObjects. For now, this is used only for filtering
search results by enrollments, but there are probably more
benefits to come.

You can do this for example:

# search for all users not enrolled in group admins
ipa user-find --not-in-groups=admins

# search for all groups not enrolled in group global with user Pavel
ipa group-find --users=Pavel --not-in-groups=global

# more examples:
ipa group-find --users=Pavel,Jakub --no-users=Honza
ipa hostgroup-find --hosts=webui.pzuna
2011-01-04 21:56:38 -05:00
Rob Crittenden
4f2a6e0a25 Don't use Class of Service for account activation, use attribute.
To support group-based account disablement we created a Class of Service
where group membership controlled whether an account was active or not.

Since we aren't doing group-based account locking drop that and use
nsaccountlock directly.

ticket 568
2011-01-04 17:09:56 -05:00
Rob Crittenden
91f4bb4ae5 Remove unnecessary options from host-del.
For some reason it was inheriting LDAPCreate.options...

ticket 652
2011-01-04 16:55:14 -05:00
Rob Crittenden
ecf2b252c0 Don't allow a user's uid to be set to 0.
ticket 578
2011-01-04 16:53:54 -05:00
Adam Young
590eef2936 status label
Change the label for the account status field IAW https://fedorahosted.org/freeipa/ticket/677
2010-12-23 15:12:45 -05:00
Pavel Zuna
f5a10bc2ec Update built-in help for user (ipa help user) with info about username format.
Ticket #436
2010-12-22 11:34:08 -05:00
Rob Crittenden
d84ffd9e54 Move permissions and privileges to their own container, cn=pbac,$SUFFIX
ticket 638
2010-12-22 11:26:49 -05:00
Pavel Zuna
e5ccddf446 Fix webUI command parameters error on Fedora 14. 2010-12-22 11:00:10 -05:00
Rob Crittenden
4d6cd89258 In meta data make ACI attributes lower-case, sorted. Add possible attributes.
The metadata contains a list of possible attributes that an ACI for that
object might need. Add a new variable to hold possible objectclasses for
optional elements (like posixGroup for groups).

To make the list easier to handle sort it and make it all lower-case.

Fix a couple of missed camel-case attributes in the default ACI list.

ticket 641
2010-12-21 13:00:15 -05:00
Pavel Zuna
1a7f5e0cc4 Fix reporting of errors when validating parameters.
Print the attribute CLI name instead of its 'real' name.
The real name is usually the name of the corresponding LDAP
attribute, which is confusing to the user.

This way we get:
Invalid 'login': blablabla
instead of:
Invalid 'uid': blablabla

Another example:
Invalid 'hostname': blablabla
instead of:
Invalid 'fqdn': blablabla

Ticket #435
2010-12-21 12:57:41 -05:00
Jan Zeleny
7bcc533d95 Added some fields to DNS2 plugin
Field idnszoneactive is marked as optional, because it is set to true by
default (see class dnszone_add).

https://fedorahosted.org/freeipa/ticket/601
2010-12-21 12:37:06 -05:00
Pavel Zuna
ec5fba6e67 Fix the mod operations. 2010-12-21 12:34:04 -05:00
Jr Aquino
fc8f7f9da8 SUDO plugin support for external hosts and users https://fedorahosted.org/freeipa/ticket/570 2010-12-21 12:29:46 -05:00
Adam Young
07ace112af aci ui
Implements the role, privilege, permission, delegation and selfservice entities ui.

Targetgroup has been added to the object types.
The groups lists need to be filter.  The filter is currently hidden, with a
hyperlink that reads 'filter' to unhide it.  Each keystroke in this filter
performs an AJAX request to the server.

There are bugs on the server side that block some of the functionality from
completing

Creating a Permission requires one of 4 target types. The add dialog in this
version assumes the user will want to create a filter type. They can change
this on the edit page.

Most search results come back with the values as arrays, but ACIs seem not to.
Search and details both required special code to handle non-arrays.

The unit tests now make use of the 'module' aspect of QUnit.  This means that
future unit test will also need to specify the module.  The advantage is that
multiple tests can share a common setup and teardown.

Bugs that need to be fixed before this works 100% are
https://fedorahosted.org/freeipa/ticket/634
https://fedorahosted.org/freeipa/ticket/633
2010-12-20 23:32:06 -05:00
Jakub Hrozek
7493d781df Change FreeIPA license to GPLv3+
The changes include:
 * Change license blobs in source files to mention GPLv3+ not GPLv2 only
 * Add GPLv3+ license text
 * Package COPYING not LICENSE as the license blobs (even the old ones)
   mention COPYING specifically, it is also more common, I think

 https://fedorahosted.org/freeipa/ticket/239
2010-12-20 17:19:53 -05:00
Rob Crittenden
ffd467bd7e Translate the membergroup dn into a group name.
Drop filter from the output, it is superfluous.

ticket 634
2010-12-20 15:18:42 -05:00
Pavel Zuna
3a9210f06f Enable filtering search results by member attributes.
LDAPSearch base class has now the ability to generate additional
options for objects with member attributes. These options are
used to filter search results - search only for objects without
the specified members.

Example:
ipa group-find --no-users=admin

Only direct members are taken into account.

Ticket #288
2010-12-20 12:28:45 -05:00
Jakub Hrozek
ffc6031ad7 Allow RDN changes from CLI
https://fedorahosted.org/freeipa/ticket/397
2010-12-20 11:27:46 -05:00