Commit Graph

63 Commits

Author SHA1 Message Date
Rob Crittenden
306d8241b3 Fix the client-side search size limit.
I've changed the variable name searchlimit to sizelimit to match the
name in python-ldap (and hopefully therefore be more readable).

The big change was changing the default value from 0 to -1. As 0 we were
never using the value from cn=ipaconfig

python-ldap expects this to be an int type

In the UI sizelimit was hardcoded at 0 for users

439880
2008-04-25 16:46:13 -04:00
Rob Crittenden
12ea8efc0b Add --verbose option so the HTTP headers and XML request/response can be seen.
Also re-do the way modules are imported. I was attemping to have ^C handled
gracefully but the way I did it could mask other problems.

443987
2008-04-25 10:35:22 -04:00
Rob Crittenden
bde9959091 When getting members let user indicate what type of member they want.
The memberOf attribute includes members that are directly in the group
via the "member" attribute and those that are included as a result of
being in a group that is in the group.

The UI needs to be able to distinguish between the two.

438706
2008-03-27 09:54:41 -04:00
Rob Crittenden
d6d12e9dc5 Require that service principals resolve to a DNS A record.
There is a --force option for those who know what they are doing.

433483
2008-02-26 13:51:56 -05:00
Rob Crittenden
97d9c235dd Set the license uniformly to GPLv2 only. 2008-02-04 15:15:52 -05:00
Rob Crittenden
042fb11fa1 Fix issues reported by rpmlint.
- Removing shebangs (#!) from a bunch of python libraries
- Don't use a variable name in init scripts for the lock file
- Keep the init script name consistent with the binary name, so renamed
  ipa-kpasswd.init to ipa_kpasswd.init
- Add status option to the init scripts
- Move most python scripts out of /usr/share/ipa and into the python
  site-packages directories (ipaserver and ipaclient)
- Remove unnecessary sys.path.append("/usr/share/ipa")
- Fix the license string in the spec files
- Rename ipa-webgui to ipa_webgui everywhere
- Fix a couple of issues reported by pychecker in ipa-python
2008-01-18 16:20:36 -05:00
Rob Crittenden
42d5ddc559 Service principal deletion 2008-01-11 11:44:23 -05:00
Rob Crittenden
1c4e4b3e14 Add function to retrieve a short list of attributes to make ipa-adddelegation
easier to use.
2008-01-04 16:39:41 -05:00
Rob Crittenden
23ffab533f Make the old entry option in update_*, check for empty parameters and
fix some problems reported by pychecker.
2007-12-11 17:34:15 -05:00
Karl MacMillan
d2378f13d0 Merge. 0001-01-01 00:00:00 +00:00
John Dennis
904b76059c merged radius work with latest mainline tip 2007-11-28 07:49:07 -05:00
John Dennis
09238510ff add command line utilites for radius profiles 2007-11-26 19:30:33 -05:00
John Dennis
4f33d67418 remove radius_client.py, move contents to radius_util.py 2007-11-26 11:12:58 -05:00
John Dennis
d98686e967 Add radius profile implementations:
get_radius_profile_by_uid
  add_radius_profile
  update_radius_profile
  delete_radius_profile
  find_radius_profiles

Rewrite command line arg handling, now support pair entry, interactive
mode with auto completion, reading pairs from a file, better handling
of mandatory values, better help, long arg names now match attribute
name in pairs

Establish mappings for all attributes and names used in clients and
profiles

Add notion of containers to radius clients and profiles in LDAP

Move common code, variables, constants, and strings into the files
radius_client.py, radius_util.py, ipautil.py to eliminate redundant
elements which could get out of sync if modified and to provide access
to other code which might benefit from using these items in the
future.

Add utility functions:
  format_list()
  parse_key_value_pairs()

Add utility class:
  AttributeValueCompleter

Unify attribute usage in radius ldap schema
2007-11-21 13:11:10 -05:00
John Dennis
c4dbe6433d add ipa-findradiusclient search 2007-11-14 15:32:08 -05:00
John Dennis
c24da12fe1 radius client modify and delete work 2007-11-14 00:04:19 -05:00
John Dennis
eab5a89d4a ipa-addradiusclient now working 2007-11-13 20:05:02 -05:00
Rob Crittenden
eb141b02ff Move dn removal to the XML-RPC side and remove empty attributes 2007-12-05 17:26:39 -05:00
Rob Crittenden
15b7dc6ff9 Add UI for service principal creation and keytab retrieval 2007-12-05 15:17:11 -05:00
Karl MacMillan
edc7af1446 Add xml-rpc interface for getting keytabs.
Warning: this lacks any sort of authorization.
0001-01-01 00:00:00 +00:00
Rob Crittenden
bf743087d2 Fix indentation error that occured in merge 2007-11-21 00:29:03 -05:00
Rob Crittenden
f42f1f44c8 Enable group inactivation by using the Class of Service plugin.
This adds 2 new groups: activated and inactivated.

If you, or a group you are a member of, is in inactivated then you are too.

If you, or a group you are a member of, is in the activated group, then you
are too.

In a fight between activated and inactivated, activated wins.

The DNs for doing this matching is case and white space sensitive.

The goal is to never have to actually set nsAccountLock in a user directly
but move them between these groups.

We need to decide where in the CLI this will happen. Right it is split
between ipa-deluser and ipa-usermod. To inactivate groups for now just
add the group to inactivate or active.
2007-11-20 22:45:29 -05:00
Rob Crittenden
1967aafa39 Implement the password policy UI and finish IPA policy UI
This includes a default password policy
Custom fields are now read from LDAP. The format is a list of
  dicts with keys: label, field, required.
The LDAP-based configuration now specifies:
    ipaUserSearchFields: uid,givenName,sn,telephoneNumber,ou,title
    ipaGroupSearchFields: cn,description
    ipaSearchTimeLimit: 2
    ipaSearchRecordsLimit: 0
    ipaCustomFields:
    ipaHomesRootDir: /home
    ipaDefaultLoginShell: /bin/sh
    ipaDefaultPrimaryGroup: ipausers
    ipaMaxUsernameLength: 8
    ipaPwdExpAdvNotify: 4
This could use some optimization.
2007-11-16 12:59:32 -05:00
Karl MacMillan
27f0aab667 Rename memberOf to group_members in xml-rpc interface. 0001-01-01 00:00:00 +00:00
Rob Crittenden
303d5ebad9 Have the GUI use memberOf() instead of looping through the member DNs
Fix a bug in the local transport version of memberOf()
2007-10-31 10:08:16 -04:00
Rob Crittenden
1d6e88565c Add memberOf API call to the XML-RPC interface
Make find-groups use memberOf to have a prettier dispaly of members
2007-10-30 15:07:02 -04:00
Kevin McCarthy
859291a706 Add delete user and group to webgui.
NOTE: this doesn't handle referential integrity.
2007-10-23 16:46:50 -07:00
Rob Crittenden
04636b8ae7 Add an LDAP attribute -> label mapping function to XML-RPC layer
Move some ACI functions around in preparation for cli delegation
2007-10-22 17:06:52 -04:00
Karl MacMillan
1685751b1c Remove dependency between ipa-pyton and ipa-server
Current ipa-python imports and calls code from ipaserver (which is in
the ipa-server package). This makes it impossible to use the admin
tools or the ipa-python package on a system without the server bits
installed. This fixes that in a fairly minimal way.
0001-01-01 00:00:00 +00:00
Kevin McCarthy
5e651a6496 Finish the email autosuggest.
For now I've added a new API call.  The field-specific searching is
a ways off.
2007-10-18 14:33:55 -07:00
Rob Crittenden
bc52446074 Fix build issues by combining patches submitted by Michael Gregg and
Karl MacMillan
Remove #!/usr/bin/python from many files to quiet rpmlint
2007-10-17 11:28:37 -04:00
Kevin McCarthy
fbbdd27b53 Creates an update_entry api call, aliases update_user and update_group to it. 2007-10-15 09:04:13 -07:00
Kevin McCarthy
63f7cdf7f7 Adds delegation listing and creation to the GUI. 2007-10-12 15:11:55 -07:00
Kevin McCarthy
2b38769b50 Combine get_user/group by dn/cn into get_entry_by_cn/dn.
Also a couple double-escaping fixes I missed in the last patch.
2007-10-09 09:26:16 -07:00
Kevin McCarthy
2ac1b39f42 Trickle the group_cn to group_dn down the layers. Fix controller calls. 2007-10-03 18:21:41 -07:00
Simo Sorce
cfac4acf9f Rely more on kerberos.
Don't read ipa.conf to get the realm, the kerberos libs do that for you.
Use the krbPrincipalName to change passwords
Make it possible to specify the principal at user creation.
Mail is not a required attribute so far, don't require it.
2007-10-01 17:33:16 -04:00
Kevin McCarthy
dbf8c1aeb9 Add group management to the user edit page.
Added a couple more API calls to make the inverse operations easier.
2007-09-28 16:01:42 -07:00
Kevin McCarthy
572b3e9fdd Make timelimit a parameter to the find methods. 2007-09-27 15:51:26 -07:00
Karl MacMillan
679343594d Install the web gui
Install the turbogears web gui including an init script. This
patch includes a few related changes:

* create a production configuration
* rename the web gui startup scrip to ipa-webgui
* add an init script
* chkconfig on the ipa-webgui init script
* make the start script properly daemonize the app when not
  in a development directory.
* Install everything to the correct places (/usr/sbin/ipa-webgui
  and /usr/share/ipa/ipagui mainly).

There are some things still left to do:

* Sort out the logging - the config needs to be adjusted so
  that logging messages end up in /var/log.
0001-01-01 00:00:00 +00:00
Kevin McCarthy
1725397a53 Adds methods to manipulate groups by dns.
Renamed some of the user_group parameters to be self-evident.
Binary wrapping isn't necessary on strings, so removed from xmlrpc calls.
2007-09-26 15:47:34 -07:00
Kevin McCarthy
fa7759684f Adds manager and direct reports to usershow page.
Fixes a bug with the group by member where is wasn't trapping not found errors.
2007-09-25 15:44:49 -07:00
Kevin McCarthy
765279d82b Show the list of groups a user belongs to. 2007-09-25 13:35:43 -07:00
Simo Sorce
fbfefe6b0e Merge conflicts between rob and kevin patches 2007-09-20 16:58:54 -04:00
Kevin McCarthy
f17071533a Implement asynchronous search for groups.
Use the filter generation code to search on multiple fields.
2007-09-19 08:42:34 -07:00
Kevin McCarthy
6b3d1e85da Add client-side search limit parameter for user search.
Limit editgroup user ajax search.
Minor UI cleanup for editgroup.
2007-09-18 14:58:30 -07:00
rcritten@redhat.com
b85668579e Use ticket forwarding with TurboGears. mod_proxy forwards the principal
name and location of the keytab. In order for this keytab to be usable
 TurboGears and Apache will need to run as the same user. We will also need
 to listen only on localhost in TG.
2007-09-14 17:19:02 -04:00
rcritten@redhat.com
ed6ab17c9c Add function to allow user's to set/reset their kerberos password
Remove some unused calls to retrieve the current realm
2007-09-11 02:48:53 -04:00
Kevin McCarthy
e9bd8dee3b Change user search to be asynchronous.
This way it returns results even if the search times out.
The find_users() search now returns a counter as the first result, which
is set to -1 if the results are partial.
2007-08-28 16:01:07 -07:00
rcritten@redhat.com
eebaa73d3d Implement delete users and groups
Implement adding a group to a group
Some other small fixups
Add new cmd-line tool ipa-delgroup
2007-08-28 13:52:08 -04:00
Karl MacMillan
6eea6664e0 This patch wraps binary data in an xmlrpclib Binary object. This
removes the need for LDIF conversion.  It will make TurboGears direct
code faster, but should keep xmlrpc about the same speed.

The patch also swaps out ldap.cidict for the IPA CIDict class.  IPA code
should only use the CIDict class now.
0001-01-01 00:00:00 +00:00