summaryrefslogtreecommitdiffstats
path: root/install
diff options
context:
space:
mode:
authorRob Crittenden <rcritten@redhat.com>2010-11-03 17:37:07 -0400
committerRob Crittenden <rcritten@redhat.com>2010-11-03 17:37:07 -0400
commit656166dc46ac5e8cb570db2bc39123460e586661 (patch)
treecbd5ad941e3fcedc4a65743de6f37af4d2999d9f /install
parent3d979dab98f1ca62d847b5d502b2a416dc1d96cc (diff)
parent681ce7e53419130da9631916c7b1e698c7b8ae80 (diff)
downloadfreeipa-656166dc46ac5e8cb570db2bc39123460e586661.tar.gz
freeipa-656166dc46ac5e8cb570db2bc39123460e586661.tar.xz
freeipa-656166dc46ac5e8cb570db2bc39123460e586661.zip
Merge branch 'master' of ssh://rcritten@git.fedorahosted.org/git/freeipa
Diffstat (limited to 'install')
-rw-r--r--install/static/ipa.js156
-rw-r--r--install/static/test/data/hbac_add.json27
-rw-r--r--install/static/test/data/hbac_add_host.json56
-rw-r--r--install/static/test/data/hbac_add_service.json56
-rw-r--r--install/static/test/data/hbac_add_sourcehost.json56
-rw-r--r--install/static/test/data/hbac_add_user.json56
-rw-r--r--install/static/test/data/hbac_del.json9
-rw-r--r--install/static/test/data/hbac_find.json24
-rw-r--r--install/static/test/data/hbac_mod.json12
-rw-r--r--install/static/test/data/hbac_remove_host.json50
-rw-r--r--install/static/test/data/hbac_remove_service.json49
-rw-r--r--install/static/test/data/hbac_remove_sourcehost.json50
-rw-r--r--install/static/test/data/hbac_remove_user.json48
-rw-r--r--install/static/test/data/hbac_show.json66
-rw-r--r--install/static/test/data/hbacsvc_find.json74
-rw-r--r--install/static/test/data/hbacsvcgroup_find.json24
16 files changed, 702 insertions, 111 deletions
diff --git a/install/static/ipa.js b/install/static/ipa.js
index d1558ee7c..18833e677 100644
--- a/install/static/ipa.js
+++ b/install/static/ipa.js
@@ -18,16 +18,17 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-/* IPA JSON-RPC helper */
-var IPA_DEFAULT_JSON_URL = '/ipa/json';
-
-/* JSON-RPC ID counter */
-var ipa_jsonrpc_id = 0;
+/*global $:true, location:true */
-var IPA = function() {
+/*Forward defined due to circular dependency with IPA.*/
+var ipa_cmd;
+var IPA_DEFAULT_JSON_URL = '/ipa/json';
+var IPA = ( function () {
- var that = {};
+ var that = {
+ jsonrpc_id: 0
+ };
that.json_url = null;
that.use_static_files = false;
@@ -53,42 +54,46 @@ var IPA = function() {
/* initialize the IPA JSON-RPC helper
* arguments:
* url - JSON-RPC URL to use (optional) */
- that.init = function(url, use_static_files, on_success, on_error) {
- if (url)
+ that.init = function (url, use_static_files, on_success, on_error) {
+ if (url) {
that.json_url = url;
+ }
- if (use_static_files)
+ if (use_static_files) {
that.use_static_files = use_static_files;
+ }
$.ajaxSetup(that.ajax_options);
ipa_cmd('json_metadata', [], {},
- function(data, text_status, xhr) {
+ function (data, text_status, xhr) {
that.metadata = data.result.metadata;
that.messages = data.result.messages;
- if (on_success) on_success(data, text_status, xhr);
+ if (on_success) {
+ on_success(data, text_status, xhr);
+ }
},
on_error
);
};
- that.get_entities = function() {
+ that.get_entities = function () {
return that.entities;
};
- that.get_entity = function(name) {
+ that.get_entity = function (name) {
return that.entities_by_name[name];
};
- that.add_entity = function(entity) {
+ that.add_entity = function (entity) {
that.entities.push(entity);
that.entities_by_name[entity.name] = entity;
};
- that.show_page = function(entity_name, facet_name, other_entity) {
+ that.show_page = function (entity_name, facet_name, other_entity) {
- var entity = IPA.get_entity(entity_name);
- var facet = entity.get_facet(facet_name);
+ //var entity = IPA.get_entity(entity_name);
+ //var facet = entity.get_facet(facet_name);
var state = {};
state[entity_name + '-facet'] = facet_name;
@@ -97,7 +102,7 @@ var IPA = function() {
};
return that;
-}();
+}());
/* call an IPA command over JSON-RPC
* arguments:
@@ -109,6 +114,7 @@ var IPA = function() {
* objname - name of an IPA object (optional) */
function ipa_cmd(name, args, options, win_callback, fail_callback, objname)
{
+
function dialog_open(xhr, text_status, error_thrown) {
var that = this;
@@ -116,11 +122,11 @@ function ipa_cmd(name, args, options, win_callback, fail_callback, objname)
modal: true,
width: 400,
buttons: {
- 'Retry': function() {
+ 'Retry': function () {
IPA.error_dialog.dialog('close');
ipa_cmd(name, args, options, win_callback, fail_callback, objname);
},
- 'Cancel': function() {
+ 'Cancel': function () {
IPA.error_dialog.dialog('close');
fail_callback.call(that, xhr, text_status, error_thrown);
}
@@ -128,24 +134,14 @@ function ipa_cmd(name, args, options, win_callback, fail_callback, objname)
});
}
- function success_handler(data, text_status, xhr) {
- if (!data) {
- var error_thrown = {
- title: 'HTTP Error '+xhr.status,
- message: data ? xhr.statusText : "No response"
- };
- http_error_handler.call(this, xhr, text_status, error_thrown);
+ function ajax_error_handler(xhr, text_status, error_thrown) {
+ IPA.error_dialog.empty();
+ IPA.error_dialog.attr('title', error_thrown.title);
- } else if (data.error) {
- var error_thrown = {
- title: 'IPA Error '+data.error.code,
- message: data.error.message
- };
- ipa_error_handler.call(this, xhr, text_status, error_thrown);
+ IPA.error_dialog.append('<p>URL: '+this.url+'</p>');
+ IPA.error_dialog.append('<p>'+error_thrown.message+'</p>');
- } else if (win_callback) {
- win_callback.call(this, data, text_status, xhr);
- }
+ dialog_open.call(this, xhr, text_status, error_thrown);
}
function error_handler(xhr, text_status, error_thrown) {
@@ -153,7 +149,8 @@ function ipa_cmd(name, args, options, win_callback, fail_callback, objname)
ajax_error_handler.call(this, xhr, text_status, error_thrown);
}
- function ajax_error_handler(xhr, text_status, error_thrown) {
+
+ function http_error_handler(xhr, text_status, error_thrown) {
IPA.error_dialog.empty();
IPA.error_dialog.attr('title', error_thrown.title);
@@ -163,40 +160,53 @@ function ipa_cmd(name, args, options, win_callback, fail_callback, objname)
dialog_open.call(this, xhr, text_status, error_thrown);
}
- function http_error_handler(xhr, text_status, error_thrown) {
+ function ipa_error_handler(xhr, text_status, error_thrown) {
IPA.error_dialog.empty();
IPA.error_dialog.attr('title', error_thrown.title);
- IPA.error_dialog.append('<p>URL: '+this.url+'</p>');
IPA.error_dialog.append('<p>'+error_thrown.message+'</p>');
dialog_open.call(this, xhr, text_status, error_thrown);
}
- function ipa_error_handler(xhr, text_status, error_thrown) {
- IPA.error_dialog.empty();
- IPA.error_dialog.attr('title', error_thrown.title);
- IPA.error_dialog.append('<p>'+error_thrown.message+'</p>');
+ function success_handler(data, text_status, xhr) {
+ if (!data) {
+ var error_thrown = {
+ title: 'HTTP Error '+xhr.status,
+ message: data ? xhr.statusText : "No response"
+ };
+ http_error_handler.call(this, xhr, text_status, error_thrown);
- dialog_open.call(this, xhr, text_status, error_thrown);
+ } else if (data.error) {
+ ipa_error_handler.call(this, xhr, text_status, /* error_thrown */ {
+ title: 'IPA Error '+data.error.code,
+ message: data.error.message
+ });
+
+ } else if (win_callback) {
+ win_callback.call(this, data, text_status, xhr);
+ }
}
- var id = ipa_jsonrpc_id++;
+ IPA.jsonrpc_id += 1;
+ var id = IPA.jsonrpc_id;
var method_name = name;
- if (objname)
+ if (objname){
method_name = objname + '_' + name;
+ }
var url = IPA.json_url;
- if (!url)
+ if (!url){
url = IPA_DEFAULT_JSON_URL;
+ }
- if (IPA.use_static_files)
+ if (IPA.use_static_files){
url += '/' + method_name + '.json';
-
+ }
var data = {
method: method_name,
params: [args, options],
@@ -215,43 +225,24 @@ function ipa_cmd(name, args, options, win_callback, fail_callback, objname)
return (id);
}
-/* parse query string into key:value dict
- * arguments:
- * qs - query string (optional) */
-function ipa_parse_qs(qs)
-{
- var dict = {};
-
- if (!qs)
- qs = location.hash.substring(1);
- qs = qs.replace(/\+/g, ' ');
-
- var args = qs.split('&');
- for (var i = 0; i < args.length; ++i) {
- var parts = args[i].split('=', 2);
- var key = decodeURIComponent(parts[0]);
- if (parts.length == 2)
- dict[key] = decodeURIComponent(parts[1]);
- else
- dict[key] = key;
- }
-
- return (dict);
-}
/* helper function used to retrieve information about an attribute */
function ipa_get_param_info(obj_name, attr)
{
var ipa_obj = IPA.metadata[obj_name];
- if (!ipa_obj) return null;
+ if (!ipa_obj) {
+ return null;
+ }
var takes_params = ipa_obj.takes_params;
- if (!takes_params)
+ if (!takes_params) {
return (null);
- for (var i = 0; i < takes_params.length; ++i) {
- if (takes_params[i]['name'] == attr)
+ }
+ for (var i = 0; i < takes_params.length; i += 1) {
+ if (takes_params[i].name === attr){
return (takes_params[i]);
+ }
}
return (null);
@@ -261,16 +252,17 @@ function ipa_get_param_info(obj_name, attr)
function ipa_get_member_attribute(obj_name, member)
{
var ipa_obj = IPA.metadata[obj_name];
- if (!ipa_obj) return null;
-
+ if (!ipa_obj) {
+ return null;
+ }
var attribute_members = ipa_obj.attribute_members;
for (var a in attribute_members) {
var objs = attribute_members[a];
- for (var i = 0; i < objs.length; ++i) {
- if (objs[i] == member)
+ for (var i = 0; i < objs.length; i += 1) {
+ if (objs[i] === member){
return a;
+ }
}
}
-
return null;
}
diff --git a/install/static/test/data/hbac_add.json b/install/static/test/data/hbac_add.json
new file mode 100644
index 000000000..2a5d251bf
--- /dev/null
+++ b/install/static/test/data/hbac_add.json
@@ -0,0 +1,27 @@
+{
+ "error": null,
+ "id": 0,
+ "result": {
+ "result": {
+ "accessruletype": [
+ "allow"
+ ],
+ "cn": [
+ "test"
+ ],
+ "dn": "ipauniqueid=f3e69e82-e3b411df-bfde9b13-2b28c216,cn=hbac,dc=dev,dc=example,dc=com",
+ "ipaenabledflag": [
+ "TRUE"
+ ],
+ "ipauniqueid": [
+ "f3e69e82-e3b411df-bfde9b13-2b28c216"
+ ],
+ "objectclass": [
+ "ipaassociation",
+ "ipahbacrule"
+ ]
+ },
+ "summary": null,
+ "value": "test"
+ }
+} \ No newline at end of file
diff --git a/install/static/test/data/hbac_add_host.json b/install/static/test/data/hbac_add_host.json
new file mode 100644
index 000000000..038d6aea4
--- /dev/null
+++ b/install/static/test/data/hbac_add_host.json
@@ -0,0 +1,56 @@
+{
+ "error": null,
+ "id": 0,
+ "result": {
+ "completed": 2,
+ "failed": {
+ "memberhost": {
+ "host": [],
+ "hostgroup": []
+ }
+ },
+ "result": {
+ "accessruletype": [
+ "allow"
+ ],
+ "accesstime": [
+ "periodic daily 0800-1400",
+ "absolute 201012161032 ~ 201012161033"
+ ],
+ "cn": [
+ "test"
+ ],
+ "dn": "ipauniqueid=e8aca082-e64a11df-9864f2e0-e0578392,cn=hbac,dc=dev,dc=example,dc=com",
+ "ipaenabledflag": [
+ "TRUE"
+ ],
+ "memberhost_host": [
+ "dev.example.com"
+ ],
+ "memberhost_hostgroup": [
+ "production"
+ ],
+ "memberservice_hbacsvc": [
+ "ftp",
+ "sshd"
+ ],
+ "memberservice_hbacsvcgroup": [
+ "sudo"
+ ],
+ "memberuser_group": [
+ "admins",
+ "editors"
+ ],
+ "memberuser_user": [
+ "admin",
+ "test"
+ ],
+ "sourcehost_host": [
+ "dev.example.com"
+ ],
+ "sourcehost_hostgroup": [
+ "staging"
+ ]
+ }
+ }
+}
diff --git a/install/static/test/data/hbac_add_service.json b/install/static/test/data/hbac_add_service.json
new file mode 100644
index 000000000..c658fe8b5
--- /dev/null
+++ b/install/static/test/data/hbac_add_service.json
@@ -0,0 +1,56 @@
+{
+ "error": null,
+ "id": 0,
+ "result": {
+ "completed": 3,
+ "failed": {
+ "memberservice": {
+ "hbacsvc": [],
+ "hbacsvcgroup": []
+ }
+ },
+ "result": {
+ "accessruletype": [
+ "allow"
+ ],
+ "accesstime": [
+ "periodic daily 0800-1400",
+ "absolute 201012161032 ~ 201012161033"
+ ],
+ "cn": [
+ "test"
+ ],
+ "dn": "ipauniqueid=e8aca082-e64a11df-9864f2e0-e0578392,cn=hbac,dc=dev,dc=example,dc=com",
+ "ipaenabledflag": [
+ "TRUE"
+ ],
+ "memberhost_host": [
+ "dev.example.com"
+ ],
+ "memberhost_hostgroup": [
+ "production"
+ ],
+ "memberservice_hbacsvc": [
+ "ftp",
+ "sshd"
+ ],
+ "memberservice_hbacsvcgroup": [
+ "sudo"
+ ],
+ "memberuser_group": [
+ "admins",
+ "editors"
+ ],
+ "memberuser_user": [
+ "admin",
+ "test"
+ ],
+ "sourcehost_host": [
+ "dev.example.com"
+ ],
+ "sourcehost_hostgroup": [
+ "staging"
+ ]
+ }
+ }
+}
diff --git a/install/static/test/data/hbac_add_sourcehost.json b/install/static/test/data/hbac_add_sourcehost.json
new file mode 100644
index 000000000..a657207f5
--- /dev/null
+++ b/install/static/test/data/hbac_add_sourcehost.json
@@ -0,0 +1,56 @@
+{
+ "error": null,
+ "id": 0,
+ "result": {
+ "completed": 2,
+ "failed": {
+ "sourcehost": {
+ "host": [],
+ "hostgroup": []
+ }
+ },
+ "result": {
+ "accessruletype": [
+ "allow"
+ ],
+ "accesstime": [
+ "periodic daily 0800-1400",
+ "absolute 201012161032 ~ 201012161033"
+ ],
+ "cn": [
+ "test"
+ ],
+ "dn": "ipauniqueid=e8aca082-e64a11df-9864f2e0-e0578392,cn=hbac,dc=dev,dc=example,dc=com",
+ "ipaenabledflag": [
+ "TRUE"
+ ],
+ "memberhost_host": [
+ "dev.example.com"
+ ],
+ "memberhost_hostgroup": [
+ "production"
+ ],
+ "memberservice_hbacsvc": [
+ "ftp",
+ "sshd"
+ ],
+ "memberservice_hbacsvcgroup": [
+ "sudo"
+ ],
+ "memberuser_group": [
+ "admins",
+ "editors"
+ ],
+ "memberuser_user": [
+ "admin",
+ "test"
+ ],
+ "sourcehost_host": [
+ "dev.example.com"
+ ],
+ "sourcehost_hostgroup": [
+ "staging"
+ ]
+ }
+ }
+}
diff --git a/install/static/test/data/hbac_add_user.json b/install/static/test/data/hbac_add_user.json
new file mode 100644
index 000000000..0c4c976e4
--- /dev/null
+++ b/install/static/test/data/hbac_add_user.json
@@ -0,0 +1,56 @@
+{
+ "error": null,
+ "id": 0,
+ "result": {
+ "completed": 3,
+ "failed": {
+ "memberuser": {
+ "group": [],
+ "user": []
+ }
+ },
+ "result": {
+ "accessruletype": [
+ "allow"
+ ],
+ "accesstime": [
+ "periodic daily 0800-1400",
+ "absolute 201012161032 ~ 201012161033"
+ ],
+ "cn": [
+ "test"
+ ],
+ "dn": "ipauniqueid=e8aca082-e64a11df-9864f2e0-e0578392,cn=hbac,dc=dev,dc=example,dc=com",
+ "ipaenabledflag": [
+ "TRUE"
+ ],
+ "memberhost_host": [
+ "dev.example.com"
+ ],
+ "memberhost_hostgroup": [
+ "production"
+ ],
+ "memberservice_hbacsvc": [
+ "ftp",
+ "sshd"
+ ],
+ "memberservice_hbacsvcgroup": [
+ "sudo"
+ ],
+ "memberuser_group": [
+ "admins",
+ "editors"
+ ],
+ "memberuser_user": [
+ "admin",
+ "test"
+ ],
+ "sourcehost_host": [
+ "dev.example.com"
+ ],
+ "sourcehost_hostgroup": [
+ "staging"
+ ]
+ }
+ }
+}
diff --git a/install/static/test/data/hbac_del.json b/install/static/test/data/hbac_del.json
new file mode 100644
index 000000000..2197a12c2
--- /dev/null
+++ b/install/static/test/data/hbac_del.json
@@ -0,0 +1,9 @@
+{
+ "error": null,
+ "id": 0,
+ "result": {
+ "result": true,
+ "summary": null,
+ "value": "test"
+ }
+} \ No newline at end of file
diff --git a/install/static/test/data/hbac_find.json b/install/static/test/data/hbac_find.json
index 1a53d722c..fd95d9f57 100644
--- a/install/static/test/data/hbac_find.json
+++ b/install/static/test/data/hbac_find.json
@@ -1,8 +1,8 @@
{
"error": null,
- "id": 6,
+ "id": 0,
"result": {
- "count": 1,
+ "count": 2,
"result": [
{
"accessruletype": [
@@ -14,7 +14,7 @@
"description": [
"Allow all users to access any host from any host"
],
- "dn": "ipauniqueid=c943a8cf-d05b-11df-b68f-525400674dcd,cn=hbac,dc=ayoung,dc=boston,dc=devel,dc=redhat,dc=com",
+ "dn": "ipauniqueid=b7567b5a-e39311df-bfde9b13-2b28c216,cn=hbac,dc=dev,dc=example,dc=com",
"hostcategory": [
"all"
],
@@ -30,9 +30,25 @@
"usercategory": [
"all"
]
+ },
+ {
+ "accessruletype": [
+ "allow"
+ ],
+ "accesstime": [
+ "periodic daily 0800-1400",
+ "absolute 201012161032 ~ 201012161033"
+ ],
+ "cn": [
+ "test"
+ ],
+ "dn": "ipauniqueid=3b6d2a82-e3b511df-bfde9b13-2b28c216,cn=hbac,dc=dev,dc=example,dc=com",
+ "ipaenabledflag": [
+ "TRUE"
+ ]
}
],
"summary": null,
"truncated": false
}
-} \ No newline at end of file
+}
diff --git a/install/static/test/data/hbac_mod.json b/install/static/test/data/hbac_mod.json
new file mode 100644
index 000000000..ea090040a
--- /dev/null
+++ b/install/static/test/data/hbac_mod.json
@@ -0,0 +1,12 @@
+{
+ "error": {
+ "code": 4202,
+ "kw": {},
+ "message": "no modifications to be performed",
+ "name": {
+ "__base64__": "RW1wdHlNb2RsaXN0"
+ }
+ },
+ "id": 0,
+ "result": null
+}
diff --git a/install/static/test/data/hbac_remove_host.json b/install/static/test/data/hbac_remove_host.json
new file mode 100644
index 000000000..02f56ecd6
--- /dev/null
+++ b/install/static/test/data/hbac_remove_host.json
@@ -0,0 +1,50 @@
+{
+ "error": null,
+ "id": 0,
+ "result": {
+ "completed": 2,
+ "failed": {
+ "memberhost": {
+ "host": [],
+ "hostgroup": []
+ }
+ },
+ "result": {
+ "accessruletype": [
+ "allow"
+ ],
+ "accesstime": [
+ "periodic daily 0800-1400",
+ "absolute 201012161032 ~ 201012161033"
+ ],
+ "cn": [
+ "test"
+ ],
+ "dn": "ipauniqueid=e8aca082-e64a11df-9864f2e0-e0578392,cn=hbac,dc=dev,dc=example,dc=com",
+ "ipaenabledflag": [
+ "TRUE"
+ ],
+ "memberservice_hbacsvc": [
+ "ftp",
+ "sshd"
+ ],
+ "memberservice_hbacsvcgroup": [
+ "sudo"
+ ],
+ "memberuser_group": [
+ "admins",
+ "editors"
+ ],
+ "memberuser_user": [
+ "admin",
+ "test"
+ ],
+ "sourcehost_host": [
+ "dev.example.com"
+ ],
+ "sourcehost_hostgroup": [
+ "staging"
+ ]
+ }
+ }
+}
diff --git a/install/static/test/data/hbac_remove_service.json b/install/static/test/data/hbac_remove_service.json
new file mode 100644
index 000000000..f8b6b51a5
--- /dev/null
+++ b/install/static/test/data/hbac_remove_service.json
@@ -0,0 +1,49 @@
+{
+ "error": null,
+ "id": 0,
+ "result": {
+ "completed": 3,
+ "failed": {
+ "memberservice": {
+ "hbacsvc": [],
+ "hbacsvcgroup": []
+ }
+ },
+ "result": {
+ "accessruletype": [
+ "allow"
+ ],
+ "accesstime": [
+ "periodic daily 0800-1400",
+ "absolute 201012161032 ~ 201012161033"
+ ],
+ "cn": [
+ "test"
+ ],
+ "dn": "ipauniqueid=e8aca082-e64a11df-9864f2e0-e0578392,cn=hbac,dc=dev,dc=example,dc=com",
+ "ipaenabledflag": [
+ "TRUE"
+ ],
+ "memberhost_host": [
+ "dev.example.com"
+ ],
+ "memberhost_hostgroup": [
+ "production"
+ ],
+ "memberuser_group": [
+ "admins",
+ "editors"
+ ],
+ "memberuser_user": [
+ "admin",
+ "test"
+ ],
+ "sourcehost_host": [
+ "dev.example.com"
+ ],
+ "sourcehost_hostgroup": [
+ "staging"
+ ]
+ }
+ }
+}
diff --git a/install/static/test/data/hbac_remove_sourcehost.json b/install/static/test/data/hbac_remove_sourcehost.json
new file mode 100644
index 000000000..da32f76e0
--- /dev/null
+++ b/install/static/test/data/hbac_remove_sourcehost.json
@@ -0,0 +1,50 @@
+{
+ "error": null,
+ "id": 0,
+ "result": {
+ "completed": 2,
+ "failed": {
+ "sourcehost": {
+ "host": [],
+ "hostgroup": []
+ }
+ },
+ "result": {
+ "accessruletype": [
+ "allow"
+ ],
+ "accesstime": [
+ "periodic daily 0800-1400",
+ "absolute 201012161032 ~ 201012161033"
+ ],
+ "cn": [
+ "test"
+ ],
+ "dn": "ipauniqueid=e8aca082-e64a11df-9864f2e0-e0578392,cn=hbac,dc=dev,dc=example,dc=com",
+ "ipaenabledflag": [
+ "TRUE"
+ ],
+ "memberhost_host": [
+ "dev.example.com"
+ ],
+ "memberhost_hostgroup": [
+ "production"
+ ],
+ "memberservice_hbacsvc": [
+ "ftp",
+ "sshd"
+ ],
+ "memberservice_hbacsvcgroup": [
+ "sudo"
+ ],
+ "memberuser_group": [
+ "admins",
+ "editors"
+ ],
+ "memberuser_user": [
+ "admin",
+ "test"
+ ]
+ }
+ }
+}
diff --git a/install/static/test/data/hbac_remove_user.json b/install/static/test/data/hbac_remove_user.json
new file mode 100644
index 000000000..f25317e83
--- /dev/null
+++ b/install/static/test/data/hbac_remove_user.json
@@ -0,0 +1,48 @@
+{
+ "error": null,
+ "id": 0,
+ "result": {
+ "completed": 3,
+ "failed": {
+ "memberuser": {
+ "group": [],
+ "user": []
+ }
+ },
+ "result": {
+ "accessruletype": [
+ "allow"
+ ],
+ "accesstime": [
+ "periodic daily 0800-1400",
+ "absolute 201012161032 ~ 201012161033"
+ ],
+ "cn": [
+ "test"
+ ],
+ "dn": "ipauniqueid=e8aca082-e64a11df-9864f2e0-e0578392,cn=hbac,dc=dev,dc=example,dc=com",
+ "ipaenabledflag": [
+ "TRUE"
+ ],
+ "memberhost_host": [
+ "dev.example.com"
+ ],
+ "memberhost_hostgroup": [
+ "production"
+ ],
+ "memberservice_hbacsvc": [
+ "ftp",
+ "sshd"
+ ],
+ "memberservice_hbacsvcgroup": [
+ "sudo"
+ ],
+ "sourcehost_host": [
+ "dev.example.com"
+ ],
+ "sourcehost_hostgroup": [
+ "staging"
+ ]
+ }
+ }
+}
diff --git a/install/static/test/data/hbac_show.json b/install/static/test/data/hbac_show.json
index d856e84d3..183a52182 100644
--- a/install/static/test/data/hbac_show.json
+++ b/install/static/test/data/hbac_show.json
@@ -1,35 +1,51 @@
{
- "error": null,
- "id": 6,
+ "error": null,
+ "id": 0,
"result": {
"result": {
"accessruletype": [
"allow"
- ],
+ ],
+ "accesstime": [
+ "periodic daily 0800-1400",
+ "absolute 201012161032 ~ 201012161033"
+ ],
"cn": [
- "allow_all"
- ],
- "description": [
- "Allow all users to access any host from any host"
- ],
- "dn": "ipauniqueid=c943a8cf-d05b-11df-b68f-525400674dcd,cn=hbac,dc=ayoung,dc=boston,dc=devel,dc=redhat,dc=com",
- "hostcategory": [
- "all"
- ],
+ "test"
+ ],
+ "dn": "ipauniqueid=e8aca082-e64a11df-9864f2e0-e0578392,cn=hbac,dc=dev,dc=example,dc=com",
"ipaenabledflag": [
"TRUE"
- ],
- "servicecategory": [
- "all"
- ],
- "sourcehostcategory": [
- "all"
- ],
- "usercategory": [
- "all"
+ ],
+ "memberhost_host": [
+ "dev.example.com"
+ ],
+ "memberhost_hostgroup": [
+ "production"
+ ],
+ "memberservice_hbacsvc": [
+ "ftp",
+ "sshd"
+ ],
+ "memberservice_hbacsvcgroup": [
+ "sudo"
+ ],
+ "memberuser_group": [
+ "admins",
+ "editors"
+ ],
+ "memberuser_user": [
+ "admin",
+ "test"
+ ],
+ "sourcehost_host": [
+ "dev.example.com"
+ ],
+ "sourcehost_hostgroup": [
+ "staging"
]
- },
- "summary": null,
- "value": "allow_all"
+ },
+ "summary": null,
+ "value": "test"
}
-} \ No newline at end of file
+}
diff --git a/install/static/test/data/hbacsvc_find.json b/install/static/test/data/hbacsvc_find.json
new file mode 100644
index 000000000..1c4b2f533
--- /dev/null
+++ b/install/static/test/data/hbacsvc_find.json
@@ -0,0 +1,74 @@
+{
+ "error": null,
+ "id": 0,
+ "result": {
+ "count": 7,
+ "result": [
+ {
+ "cn": [
+ "sshd"
+ ],
+ "description": [
+ "sshd"
+ ],
+ "dn": "cn=sshd,cn=hbacservices,cn=accounts,dc=dev,dc=example,dc=com"
+ },
+ {
+ "cn": [
+ "ftp"
+ ],
+ "description": [
+ "ftp"
+ ],
+ "dn": "cn=ftp,cn=hbacservices,cn=accounts,dc=dev,dc=example,dc=com"
+ },
+ {
+ "cn": [
+ "su"
+ ],
+ "description": [
+ "su"
+ ],
+ "dn": "cn=su,cn=hbacservices,cn=accounts,dc=dev,dc=example,dc=com"
+ },
+ {
+ "cn": [
+ "login"
+ ],
+ "description": [
+ "login"
+ ],
+ "dn": "cn=login,cn=hbacservices,cn=accounts,dc=dev,dc=example,dc=com"
+ },
+ {
+ "cn": [
+ "su-l"
+ ],
+ "description": [
+ "su with login shell"
+ ],
+ "dn": "cn=su-l,cn=hbacservices,cn=accounts,dc=dev,dc=example,dc=com"
+ },
+ {
+ "cn": [
+ "sudo"
+ ],
+ "description": [
+ "sudo"
+ ],
+ "dn": "cn=sudo,cn=hbacservices,cn=accounts,dc=dev,dc=example,dc=com"
+ },
+ {
+ "cn": [
+ "sudo-i"
+ ],
+ "description": [
+ "sudo-i"
+ ],
+ "dn": "cn=sudo-i,cn=hbacservices,cn=accounts,dc=dev,dc=example,dc=com"
+ }
+ ],
+ "summary": null,
+ "truncated": false
+ }
+}
diff --git a/install/static/test/data/hbacsvcgroup_find.json b/install/static/test/data/hbacsvcgroup_find.json
new file mode 100644
index 000000000..b6a669009
--- /dev/null
+++ b/install/static/test/data/hbacsvcgroup_find.json
@@ -0,0 +1,24 @@
+{
+ "error": null,
+ "id": 0,
+ "result": {
+ "count": 1,
+ "result": [
+ {
+ "cn": [
+ "SUDO"
+ ],
+ "description": [
+ "Default group of SUDO related services"
+ ],
+ "dn": "cn=sudo,cn=hbacservicegroups,cn=accounts,dc=dev,dc=example,dc=com",
+ "member_hbacsvc": [
+ "sudo",
+ "sudo-i"
+ ]
+ }
+ ],
+ "summary": "1 group matched",
+ "truncated": false
+ }
+}