Commit Graph

7225 Commits

Author SHA1 Message Date
Petr Viktorin
dfbd7170e9 install/ui/build: Build core.js
The make-ui.sh script builds both app.js and core.js,
but only one was specified in the Makefile.
Correct the mistake.

Reviewed-By: Petr Vobornik <pvoborni@redhat.com>
2014-06-30 18:17:28 +02:00
Martin Kosek
50c30c8401 Let Host Administrators use host-disable command
Host Administrators could not write to service keytab attribute and
thus they could not run the host-disable command.

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

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
2014-06-30 14:59:27 +02:00
Tomas Babej
ffab09a7ef ipa-client-install: Restart nisdomain service instead of starting
To ensure new NIS domain name is loaded after ipa-client-install
even in case when nisdomainname service is already running, we
need to restart the service rather than starting it.

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

Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com>
2014-06-30 13:58:29 +02:00
Petr Vobornik
35d3f03843 webui: support unlock user command
Call user-unlock command from Web UI.

It will unlock displayed user on current master.

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

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-30 13:11:53 +02:00
Petr Vobornik
029649c05c webui-ci: fix action list action visibility and enablement assertion
The new html structure was not addressed properly.

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-30 13:00:13 +02:00
Petr Vobornik
b36a3c693b webui: add sync_otp.html
standalone page for OTP token synchronization. It reuses SyncOTPScreen
widget instead of reimplementing the logic as in other standalone pages.

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

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-30 12:27:05 +02:00
Petr Vobornik
46a42de532 webui: layer for standalone pages which use WebUI framework
Current compiled Web UI layer (app.js) contains every FreeIPA plugin and
not just the UI framework. It's not possible to start just a simple facet.

This commit creates a basis for a layer (core.js) which contains only
framework code and not entity related code.

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-30 12:27:05 +02:00
Petr Vobornik
c2c1131a7a webui: fix confirmation mixin origin check
Current check is not enough.

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

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-30 12:27:04 +02:00
Petr Vobornik
9dbeeb7556 webui: bind Login facet and OTP sync facet
Simple plugin which handles transition from login facet to OTP sync facet
and vice versa.

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

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-30 12:27:04 +02:00
Petr Vobornik
d9a7fcb5e1 webui: support global notifications in all containers
Global notifications were limited to "main" container. Now they have their
own container which is displayed over other ones. It makes them usable
everywhere.

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-30 12:27:04 +02:00
Petr Vobornik
72a107c9d7 webui: add link pointing to OTP sync page to login
https://fedorahosted.org/freeipa/ticket/4218

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-30 12:27:04 +02:00
Petr Vobornik
30b1256b62 webui: add OTP token synchronization
New SyncOTPScreen widget and related facet.

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

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-30 12:27:03 +02:00
Petr Vobornik
d159662ade webui: base class for LoginScreen-like facets
LoginScreen has layout which can be reused for other facets/widgets,
e.g. for Sync OTP facet

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-30 12:27:03 +02:00
Petr Viktorin
36d261e843 Update translations
Pull fresh translations from Transifex.
Update the POT file.

Thanks to all translators!
2014-06-27 16:40:02 +02:00
Martin Kosek
bd29d3cbbc Fix objectClass casing in LDIF to prevent schema update error
When a new objectclass was defined as "objectclass" and not
"objectClass", it made the schema updater skip some objectclasses.

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

Reviewed-By: Rich Megginson <rmeggins@redhat.com>
2014-06-27 16:29:57 +02:00
Martin Basti
aa2ef07b8c Upgrade special master zones to forward zones
This upgrade is executed only if IPA version is older than 4.0
Requires detection if 'idnsforwardzone' objectclass is presented in
schema before schema is upgraded

Design: http://www.freeipa.org/page/V4/Forward_zones#Updates_and_Upgrades

Ticket: https://fedorahosted.org/freeipa/ticket/3210
Reviewed-By: Martin Kosek <mkosek@redhat.com>
2014-06-27 14:54:35 +02:00
Martin Basti
c1f3fd6831 Added upgrade step executed before schmema is upgraded
Class PreSchemaUpdate is executed before ldap schema update

This is required by ticket: https://fedorahosted.org/freeipa/ticket/3210

Reviewed-By: Martin Kosek <mkosek@redhat.com>
2014-06-27 14:54:35 +02:00
Petr Vobornik
5568e357d1 webui: extract rpc value from object envelope
adapt Web UI to a newer style of encapsulation object data

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

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-27 14:23:22 +02:00
Petr Vobornik
9aac0524c9 webui: send API version in RPC requests
Currently there is an incorrect behavior that server doesn't send datetime
and dnsname data in new format.

This patch adds the version to each RPC request making the UI look as  the
latest client. Server then sends data in correct format. It also removes
the "unknown version" warning from each RPC response.

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

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-27 14:23:21 +02:00
Petr Vobornik
59f66a156b webui: fix detection of RPC command
old detection did not work with the static version used for test and
demonstration purposes.

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

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-27 14:18:35 +02:00
Petr Vobornik
e6a373e930 webui-test: dns forward zone json data
Fake API results for testing and presentation purposes of DNS Forward
Zones.

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

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-27 14:18:35 +02:00
Petr Vobornik
db2666d276 webui-test: static metadata update
Regular update of static metadata for testing and presentation purposes.
It should also contain new DNS Forward Zones metadata.

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

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-27 14:18:34 +02:00
Petr Vobornik
c7c13965e3 webui-ci: dns forward zone tests
Selenium CI sanity tests for DNS Forward Zones

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

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-27 14:18:34 +02:00
Petr Vobornik
7a25168a3c webui: dns forward zones
Add DNS Forward Zones Web UI.

- pages under: Identity/DNS/DNS Forward Zones

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

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-27 14:18:34 +02:00
Petr Vobornik
8ca5793160 webui: add confirmation for dns zone permission actions
All header actions should require confirmation.

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-27 14:18:33 +02:00
Martin Kosek
8568f66cff Add python-yubico to BuildRequires
python-yubico needs to be on a machine to be able to build FreeIPA.
Without it, even ./makeapi and ./makeaci fails.
2014-06-27 10:18:23 +02:00
Simo Sorce
d9d5967f7e Fix getkeytab code to always use implicit tagging.
A mixture of implicit and explicit tagging was being used and this caused
a bug in retrieving the enctype number due to the way ber_scanf() loosely
treat sequences and explicit tagging.

The ASN.1 notation used to describe the getkeytab operation uses implicit
tagging, so by changing the code we simply follow to the specified encoding.

Resolves: https://fedorahosted.org/freeipa/ticket/4404

Signed-off-by: Simo Sorce <simo@redhat.com>
Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com>
2014-06-27 10:03:23 +02:00
Nathaniel McCallum
0d21937995 Add otptoken-sync command
This command calls the token sync HTTP POST call in the server providing
the CLI interface to synchronization.

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

Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com>
2014-06-26 16:15:18 +02:00
Nathaniel McCallum
2767fb584a Add the otptoken-add-yubikey command
This command behaves almost exactly like otptoken-add except:
1. The new token data is written directly to a YubiKey
2. The vendor/model/serial fields are populated from the YubiKey

Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com>
2014-06-26 16:10:16 +02:00
Nathaniel McCallum
14b38b7704 Add /session/token_sync POST support
This HTTP call takes the following parameters:
 * user
 * password
 * first_code
 * second_code
 * token (optional)

Using this information, the server will perform token synchronization.
If the token is not specified, all tokens will be searched for synchronization.
Otherwise, only the token specified will be searched.

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

Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com>
2014-06-26 15:55:24 +02:00
Petr Vobornik
1c94edd3a0 rpcserver: fix local vs utc time comparison
login_password did not work properly in timezones other than +0h because
local time was compared with utc time.

Bug introduced in:
https://fedorahosted.org/freeipa/ticket/4339

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-26 12:37:40 +02:00
Petr Vobornik
70c77e6a3c webui: support otp in reset_password.html
https://fedorahosted.org/freeipa/ticket/4262

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-26 12:37:40 +02:00
Petr Vobornik
870db2f677 webui: rebase user password dialog on password dialog and add otp support
https://fedorahosted.org/freeipa/ticket/4262

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-26 12:37:39 +02:00
Petr Vobornik
e3de467676 webui: add placeholders to login screen
Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-26 12:37:39 +02:00
Petr Vobornik
6e7d4ad468 webui: placeholder attribute support in textbox and textarea
Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-26 12:37:39 +02:00
Petr Vobornik
f9adc5a5f3 webui: support password change with OTP in login screen
https://fedorahosted.org/freeipa/ticket/4262

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-26 12:37:39 +02:00
Petr Vobornik
2df6542232 ipa-passwd: add OTP support
https://fedorahosted.org/freeipa/ticket/4262

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-26 12:37:38 +02:00
Petr Vobornik
896920ed12 rpcserver: add otp support to change_password handler
https://fedorahosted.org/freeipa/ticket/4262

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-26 12:37:38 +02:00
Petr Vobornik
7fca783ec5 ldap2: add otp support to modify_password
https://fedorahosted.org/freeipa/ticket/4262

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-06-26 12:37:38 +02:00
Jan Cholasta
3e0245f28f Do not corrupt sshd_config in client install when trailing newline is missing.
https://fedorahosted.org/freeipa/ticket/4373

Reviewed-By: Martin Kosek <mkosek@redhat.com>
2014-06-26 12:00:29 +02:00
Simo Sorce
6b92fb2a96 man: Add -r option to ipa-getkeytab.1
Update the man page with the new ipa-getkeytab option.

Reviewed-By: Nathaniel McCallum <npmccallum@redhat.com>
2014-06-26 10:30:53 +02:00
Simo Sorce
f352702d67 ipa-getkeytab: Add support for get_keytab extop
This new extended operation is tried by default and then the code falls
back to the old method if it fails. The new method allows for server
side password generation as well as retrieval of existing credentials
w/o causing regeneration of keys on the server.

Resolves:
https://fedorahosted.org/freeipa/ticket/3859

Reviewed-By: Nathaniel McCallum <npmccallum@redhat.com>
2014-06-26 10:30:53 +02:00
Simo Sorce
153a009a07 ipa-getkeytab: Modularize ldap_set_keytab function
Isolate parts that will be reused in following patches.

Reviewed-By: Nathaniel McCallum <npmccallum@redhat.com>
2014-06-26 10:30:53 +02:00
Simo Sorce
5c0e7a5fb4 keytab: Add new extended operation to get a keytab.
This new extended operation allow to create new keys or retrieve
existing ones. The new set of keys is returned as a ASN.1 structure
similar to the one that is passed in by the 'set keytab' extended
operation.

Access to the operation is regulated through a new special ACI that
allows 'retrieval' only if the user has access to an attribute named
ipaProtectedOperation postfixed by the subtypes 'read_keys' and
'write_keys' to distinguish between creation and retrieval operation.

For example for allowing retrieval by a specific user the following ACI
is set on cn=accounts:

(targetattr="ipaProtectedOperation;read_keys") ...
 ... userattr=ipaAllowedToPerform;read_keys#USERDN)

This ACI matches only if the service object hosts a new attribute named
ipaAllowedToPerform that holds the DN of the user attempting the
operation.

Resolves:
https://fedorahosted.org/freeipa/ticket/3859

Reviewed-By: Nathaniel McCallum <npmccallum@redhat.com>
2014-06-26 10:30:53 +02:00
Simo Sorce
88bcf5899c keytabs: Expose and modify key encoding function
Make it available outside of the encoding.c file for use in a follow-up
patch. Add option to not pass a password and generate a random key
instead.

Related:
https://fedorahosted.org/freeipa/ticket/3859

Reviewed-By: Nathaniel McCallum <npmccallum@redhat.com>
2014-06-26 10:30:53 +02:00
Simo Sorce
d04746cdea keytabs: Modularize setkeytab operation
In preparation of adding another function to avoid code duplication.

Related:
https://fedorahosted.org/freeipa/ticket/3859

Reviewed-By: Nathaniel McCallum <npmccallum@redhat.com>
2014-06-26 10:30:53 +02:00
Tomas Babej
e5e42fc83a ipaplatform: Move paths from installers to paths module
Part of: https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
2014-06-26 09:22:21 +02:00
Tomas Babej
c8511d3b3b ipaplatform: Fix misspelled path constant
Reviewed-By: Petr Viktorin <pviktori@redhat.com>
2014-06-25 21:07:07 +02:00
Tomas Babej
697387328b ipaplatform: Fix build warnings
The newly created ipaplatform subdirectories base and fedora were
mentioned multiple times in the specfile, which produced build
warnings.

Part of: https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
2014-06-25 21:07:07 +02:00
Tomas Babej
2a3c746dca ipaplatform: Drop the base authconfig class
As authconfig is a distro-specific tool there is no incentive for
implying that other platforms should implement any authconfig
implementation of their own.

Part of: https://fedorahosted.org/freeipa/ticket/4052

Reviewed-By: Petr Viktorin <pviktori@redhat.com>
2014-06-25 21:07:07 +02:00