mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
webui: use domain name instead of domain SID in idrange adder dialog
It's more user friendly. Almost nobody remembers SIDs. https://fedorahosted.org/freeipa/ticket/4661 Reviewed-By: Tomas Babej <tbabej@redhat.com>
This commit is contained in:
parent
230df95ed9
commit
f70d859b39
@ -138,9 +138,7 @@ return {
|
|||||||
title: '@mo-param:idrange:ipasecondarybaserid:label'
|
title: '@mo-param:idrange:ipasecondarybaserid:label'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'ipanttrusteddomainsid',
|
name: 'ipanttrusteddomainname',
|
||||||
label: '@i18n:objects.idrange.ipanttrusteddomainsid',
|
|
||||||
title: '@mo-param:idrange:ipanttrusteddomainsid:label',
|
|
||||||
enabled: false
|
enabled: false
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@ -153,14 +151,14 @@ return {
|
|||||||
IPA.idrange_adder_policy = function(spec) {
|
IPA.idrange_adder_policy = function(spec) {
|
||||||
/*
|
/*
|
||||||
The logic for enabling/requiring ipabaserid, ipasecondarybaserid and
|
The logic for enabling/requiring ipabaserid, ipasecondarybaserid and
|
||||||
ipanttrusteddomainsid is as follows:
|
ipanttrusteddomainname is as follows:
|
||||||
1) for AD ranges (range type is ipa-ad-trust or ipa-ad-trust-posix):
|
1) for AD ranges (range type is ipa-ad-trust or ipa-ad-trust-posix):
|
||||||
* ipanttrusteddomainsid is required
|
* ipanttrusteddomainname is required
|
||||||
* ipabaserid is required for ipa-ad-trust but disabled for
|
* ipabaserid is required for ipa-ad-trust but disabled for
|
||||||
ipa-ad-trust-posix
|
ipa-ad-trust-posix
|
||||||
* ipasecondarybaserid is disabled
|
* ipasecondarybaserid is disabled
|
||||||
2) for local ranges
|
2) for local ranges
|
||||||
* ipanttrusteddomainsid is disabled
|
* ipanttrusteddomainname is disabled
|
||||||
A) if server has AD trust support:
|
A) if server has AD trust support:
|
||||||
* both ipabaserid and ipasecondarybaserid are required
|
* both ipabaserid and ipasecondarybaserid are required
|
||||||
B) if server does not have AD trust support:
|
B) if server does not have AD trust support:
|
||||||
@ -207,7 +205,7 @@ IPA.idrange_adder_policy = function(spec) {
|
|||||||
var type_f = that.container.fields.get_field('iparangetype');
|
var type_f = that.container.fields.get_field('iparangetype');
|
||||||
var baserid_f = that.container.fields.get_field('ipabaserid');
|
var baserid_f = that.container.fields.get_field('ipabaserid');
|
||||||
var secondarybaserid_f = that.container.fields.get_field('ipasecondarybaserid');
|
var secondarybaserid_f = that.container.fields.get_field('ipasecondarybaserid');
|
||||||
var trusteddomainsid_f = that.container.fields.get_field('ipanttrusteddomainsid');
|
var trusteddomainname_f = that.container.fields.get_field('ipanttrusteddomainname');
|
||||||
|
|
||||||
var type_v = type_f.get_value()[0];
|
var type_v = type_f.get_value()[0];
|
||||||
var baserid_v = baserid_f.get_value()[0] || '';
|
var baserid_v = baserid_f.get_value()[0] || '';
|
||||||
@ -221,10 +219,10 @@ IPA.idrange_adder_policy = function(spec) {
|
|||||||
} else {
|
} else {
|
||||||
disable(baserid_f);
|
disable(baserid_f);
|
||||||
}
|
}
|
||||||
require(trusteddomainsid_f);
|
require(trusteddomainname_f);
|
||||||
disable(secondarybaserid_f);
|
disable(secondarybaserid_f);
|
||||||
} else {
|
} else {
|
||||||
disable(trusteddomainsid_f);
|
disable(trusteddomainname_f);
|
||||||
|
|
||||||
if (IPA.trust_enabled) {
|
if (IPA.trust_enabled) {
|
||||||
require(baserid_f);
|
require(baserid_f);
|
||||||
|
@ -59,13 +59,13 @@ class range_tasks(UI_driver):
|
|||||||
self.max_id = max_id
|
self.max_id = max_id
|
||||||
self.max_rid = max_rid
|
self.max_rid = max_rid
|
||||||
|
|
||||||
def get_sid(self):
|
def get_domain(self):
|
||||||
result = self.execute_api_from_ui('trust_find', [], {})
|
result = self.execute_api_from_ui('trust_find', [], {})
|
||||||
trusts = result['result']['result']
|
trusts = result['result']['result']
|
||||||
sid = None
|
domain = None
|
||||||
if trusts:
|
if trusts:
|
||||||
sid = trusts[0]['ipanttrusteddomainsid']
|
domain = trusts[0]['cn']
|
||||||
return sid
|
return domain
|
||||||
|
|
||||||
def get_data(self, pkey, size=50, add_data=None):
|
def get_data(self, pkey, size=50, add_data=None):
|
||||||
|
|
||||||
@ -81,7 +81,7 @@ class range_tasks(UI_driver):
|
|||||||
}
|
}
|
||||||
return data
|
return data
|
||||||
|
|
||||||
def get_add_data(self, pkey, range_type='ipa-local', size=50, shift=100, sid=None):
|
def get_add_data(self, pkey, range_type='ipa-local', size=50, shift=100, domain=None):
|
||||||
|
|
||||||
base_id = self.max_id + shift
|
base_id = self.max_id + shift
|
||||||
self.max_id = base_id + size
|
self.max_id = base_id + size
|
||||||
@ -98,19 +98,19 @@ class range_tasks(UI_driver):
|
|||||||
('callback', self.check_range_type_mod, range_type)
|
('callback', self.check_range_type_mod, range_type)
|
||||||
]
|
]
|
||||||
|
|
||||||
if not sid:
|
if not domain:
|
||||||
base_rid = self.max_rid + shift
|
base_rid = self.max_rid + shift
|
||||||
self.max_rid = base_rid + size
|
self.max_rid = base_rid + size
|
||||||
add.append(('textbox', 'ipasecondarybaserid', str(base_rid)))
|
add.append(('textbox', 'ipasecondarybaserid', str(base_rid)))
|
||||||
if sid:
|
if domain:
|
||||||
add.append(('textbox', 'ipanttrusteddomainsid', sid))
|
add.append(('textbox', 'ipanttrusteddomainname', domain))
|
||||||
|
|
||||||
return add
|
return add
|
||||||
|
|
||||||
def check_range_type_mod(self, range_type):
|
def check_range_type_mod(self, range_type):
|
||||||
if range_type == 'ipa-local':
|
if range_type == 'ipa-local':
|
||||||
self.assert_disabled("[name=ipanttrusteddomainsid]")
|
self.assert_disabled("[name=ipanttrusteddomainname]")
|
||||||
self.assert_disabled("[name=ipasecondarybaserid]", negative=True)
|
self.assert_disabled("[name=ipasecondarybaserid]", negative=True)
|
||||||
elif range_type == 'ipa-ad-trust':
|
elif range_type == 'ipa-ad-trust':
|
||||||
self.assert_disabled("[name=ipanttrusteddomainsid]", negative=True)
|
self.assert_disabled("[name=ipanttrusteddomainname]", negative=True)
|
||||||
self.assert_disabled("[name=ipasecondarybaserid]")
|
self.assert_disabled("[name=ipasecondarybaserid]")
|
||||||
|
@ -74,11 +74,11 @@ class test_range(range_tasks):
|
|||||||
|
|
||||||
self.add_record(trust_mod.ENTITY, trust_data)
|
self.add_record(trust_mod.ENTITY, trust_data)
|
||||||
|
|
||||||
sid = self.get_sid()
|
domain = self.get_domain()
|
||||||
|
|
||||||
self.navigate_to_entity(ENTITY)
|
self.navigate_to_entity(ENTITY)
|
||||||
|
|
||||||
add = self.get_add_data(pkey_ad, range_type='ipa-ad-trust', sid=sid)
|
add = self.get_add_data(pkey_ad, range_type='ipa-ad-trust', domain=domain)
|
||||||
data = self.get_data(pkey_ad, add_data=add)
|
data = self.get_data(pkey_ad, add_data=add)
|
||||||
self.add_record(ENTITY, data, navigate=False)
|
self.add_record(ENTITY, data, navigate=False)
|
||||||
self.assert_record_value('Active Directory domain range', pkey_ad, column)
|
self.assert_record_value('Active Directory domain range', pkey_ad, column)
|
||||||
|
Loading…
Reference in New Issue
Block a user