summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--install/ui/ipa.js4
-rw-r--r--ipaserver/rpcserver.py1
2 files changed, 5 insertions, 0 deletions
diff --git a/install/ui/ipa.js b/install/ui/ipa.js
index 5d59a89a4..080f4836d 100644
--- a/install/ui/ipa.js
+++ b/install/ui/ipa.js
@@ -120,6 +120,7 @@ var IPA = function() {
},
on_success: function(data, text_status, xhr) {
that.whoami = data.result[0];
+ that.principal = that.whoami.krbprincipalname[0];
}
}));
@@ -419,6 +420,9 @@ IPA.command = function(spec) {
message: data ? xhr.statusText : IPA.get_message('errors.no_response', 'No response')
});
+ } else if (IPA.principal && data.principal && IPA.principal !== data.principal) {
+ window.location.reload();
+
} else if (data.error) {
// error_handler() calls IPA.hide_activity_icon()
error_handler.call(this, xhr, text_status, /* error_thrown */ {
diff --git a/ipaserver/rpcserver.py b/ipaserver/rpcserver.py
index e12f2706e..2bfb8ea60 100644
--- a/ipaserver/rpcserver.py
+++ b/ipaserver/rpcserver.py
@@ -469,6 +469,7 @@ class jsonserver(WSGIExecutioner):
result=result,
error=error,
id=_id,
+ principal=unicode(context.principal),
)
response = json_encode_binary(response)
return json.dumps(response, sort_keys=True, indent=4)