You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@knox.apache.org by lm...@apache.org on 2016/03/10 18:34:48 UTC
[09/11] knox git commit: KNOX-686 - Default Form based SSO IDP as an
Application
http://git-wip-us.apache.org/repos/asf/knox/blob/3e36bc69/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontawesome/fontawesome-webfont.ttf
----------------------------------------------------------------------
diff --git a/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontawesome/fontawesome-webfont.ttf b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontawesome/fontawesome-webfont.ttf
new file mode 100644
index 0000000..d365924
Binary files /dev/null and b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontawesome/fontawesome-webfont.ttf differ
http://git-wip-us.apache.org/repos/asf/knox/blob/3e36bc69/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontawesome/fontawesome-webfont.woff
----------------------------------------------------------------------
diff --git a/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontawesome/fontawesome-webfont.woff b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontawesome/fontawesome-webfont.woff
new file mode 100644
index 0000000..b9bd17e
Binary files /dev/null and b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontawesome/fontawesome-webfont.woff differ
http://git-wip-us.apache.org/repos/asf/knox/blob/3e36bc69/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-300.woff
----------------------------------------------------------------------
diff --git a/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-300.woff b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-300.woff
new file mode 100644
index 0000000..99f3353
Binary files /dev/null and b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-300.woff differ
http://git-wip-us.apache.org/repos/asf/knox/blob/3e36bc69/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-300i.woff
----------------------------------------------------------------------
diff --git a/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-300i.woff b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-300i.woff
new file mode 100644
index 0000000..dd0a0ea
Binary files /dev/null and b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-300i.woff differ
http://git-wip-us.apache.org/repos/asf/knox/blob/3e36bc69/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-400.woff
----------------------------------------------------------------------
diff --git a/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-400.woff b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-400.woff
new file mode 100644
index 0000000..55b25f8
Binary files /dev/null and b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-400.woff differ
http://git-wip-us.apache.org/repos/asf/knox/blob/3e36bc69/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-400i.woff
----------------------------------------------------------------------
diff --git a/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-400i.woff b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-400i.woff
new file mode 100644
index 0000000..cedefb8
Binary files /dev/null and b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-400i.woff differ
http://git-wip-us.apache.org/repos/asf/knox/blob/3e36bc69/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-600.woff
----------------------------------------------------------------------
diff --git a/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-600.woff b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-600.woff
new file mode 100644
index 0000000..e83bb33
Binary files /dev/null and b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-600.woff differ
http://git-wip-us.apache.org/repos/asf/knox/blob/3e36bc69/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-600i.woff
----------------------------------------------------------------------
diff --git a/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-600i.woff b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-600i.woff
new file mode 100644
index 0000000..983bb33
Binary files /dev/null and b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-600i.woff differ
http://git-wip-us.apache.org/repos/asf/knox/blob/3e36bc69/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-700.woff
----------------------------------------------------------------------
diff --git a/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-700.woff b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-700.woff
new file mode 100644
index 0000000..27619e7
Binary files /dev/null and b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-700.woff differ
http://git-wip-us.apache.org/repos/asf/knox/blob/3e36bc69/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-700i.woff
----------------------------------------------------------------------
diff --git a/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-700i.woff b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-700i.woff
new file mode 100644
index 0000000..e12c3a9
Binary files /dev/null and b/gateway-applications/src/main/resources/applications/knoxauth/fonts/fontopensans/open-sans-700i.woff differ
http://git-wip-us.apache.org/repos/asf/knox/blob/3e36bc69/gateway-applications/src/main/resources/applications/knoxauth/images/avatar.png
----------------------------------------------------------------------
diff --git a/gateway-applications/src/main/resources/applications/knoxauth/images/avatar.png b/gateway-applications/src/main/resources/applications/knoxauth/images/avatar.png
new file mode 100644
index 0000000..74a8031
Binary files /dev/null and b/gateway-applications/src/main/resources/applications/knoxauth/images/avatar.png differ
http://git-wip-us.apache.org/repos/asf/knox/blob/3e36bc69/gateway-applications/src/main/resources/applications/knoxauth/images/blank.gif
----------------------------------------------------------------------
diff --git a/gateway-applications/src/main/resources/applications/knoxauth/images/blank.gif b/gateway-applications/src/main/resources/applications/knoxauth/images/blank.gif
new file mode 100644
index 0000000..35d42e8
Binary files /dev/null and b/gateway-applications/src/main/resources/applications/knoxauth/images/blank.gif differ
http://git-wip-us.apache.org/repos/asf/knox/blob/3e36bc69/gateway-applications/src/main/resources/applications/knoxauth/images/knox-logo.gif
----------------------------------------------------------------------
diff --git a/gateway-applications/src/main/resources/applications/knoxauth/images/knox-logo.gif b/gateway-applications/src/main/resources/applications/knoxauth/images/knox-logo.gif
new file mode 100644
index 0000000..6f476ac
Binary files /dev/null and b/gateway-applications/src/main/resources/applications/knoxauth/images/knox-logo.gif differ
http://git-wip-us.apache.org/repos/asf/knox/blob/3e36bc69/gateway-applications/src/main/resources/applications/knoxauth/images/loading.gif
----------------------------------------------------------------------
diff --git a/gateway-applications/src/main/resources/applications/knoxauth/images/loading.gif b/gateway-applications/src/main/resources/applications/knoxauth/images/loading.gif
new file mode 100644
index 0000000..5b33f7e
Binary files /dev/null and b/gateway-applications/src/main/resources/applications/knoxauth/images/loading.gif differ
http://git-wip-us.apache.org/repos/asf/knox/blob/3e36bc69/gateway-applications/src/main/resources/applications/knoxauth/js/knoxauth.js
----------------------------------------------------------------------
diff --git a/gateway-applications/src/main/resources/applications/knoxauth/js/knoxauth.js b/gateway-applications/src/main/resources/applications/knoxauth/js/knoxauth.js
new file mode 100644
index 0000000..bc99f01
--- /dev/null
+++ b/gateway-applications/src/main/resources/applications/knoxauth/js/knoxauth.js
@@ -0,0 +1,110 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+var loginURL = "/gateway/knoxsso/api/v1/websso?originalUrl=";
+var logoutURL = "/WebServices/LogOff";
+var userAgent = navigator.userAgent.toLowerCase();
+var firstLogIn = true;
+
+function get(name){
+ if(name=(new RegExp('[?&]'+encodeURIComponent(name)+'=([^&]*)')).exec(location.search))
+ return decodeURIComponent(name[1]);
+}
+
+var login = function() {
+ var form = document.forms[0];
+ var username = form.username.value;
+ var password = form.password.value;
+ var _login = function(){
+ var originalUrl = get("originalUrl");
+ var idpUrl = loginURL + originalUrl;
+ //Instantiate HTTP Request
+ var request = ((window.XMLHttpRequest) ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP"));
+ request.open("POST", loginURL + originalUrl, true);
+ request.setRequestHeader("Authorization", "Basic " + btoa(username + ":" + password))
+ request.send(null);
+
+ //Process Response
+ request.onreadystatechange = function(){
+ if (request.readyState == 4) {
+ if (request.status==200 || request.status==204 || request.status==307 || request.status==303) {
+ // window.location.replace(originalUrl);
+ // window.location = originalUrl;
+ try { window.location.replace(originalUrl); }
+ catch(e) { window.location = originalUrl; }
+ }
+ else {
+ // if (navigator.userAgent.toLowerCase().indexOf("firefox") != -1){
+ // logoff();
+ // }
+ if (request.status==401) {
+ $('#errorBox').show();
+ $('#signInLoading').hide();
+ $('#signIn').removeAttr('disabled');
+ $('#errorBox .errorMsg').text("The username or password you entered is incorrect.");
+ }
+ }
+ }
+ }
+ }
+
+ var userAgent = navigator.userAgent.toLowerCase();
+ if (userAgent.indexOf("firefox") != -1){ //TODO: check version number
+ if (firstLogIn) _login();
+ else logoff(_login);
+ }
+ else{
+ _login();
+ }
+
+ if (firstLogIn) firstLogIn = false;
+}
+
+var logoff = function(callback){
+
+ if (userAgent.indexOf("msie") != -1) {
+ document.execCommand("ClearAuthenticationCache");
+ }
+ else if (userAgent.indexOf("firefox") != -1){ //TODO: check version number
+
+ var request1 = new XMLHttpRequest();
+ var request2 = new XMLHttpRequest();
+
+ //Logout. Tell the server not to return the "WWW-Authenticate" header
+ request1.open("GET", logoutURL + "?prompt=false", true);
+ request1.send("");
+ request1.onreadystatechange = function(){
+ if (request1.readyState == 4) {
+
+ //Login with dummy credentials to clear the auth cache
+ request2.open("GET", logoutURL, true, "logout", "logout");
+ request2.send("");
+
+ request2.onreadystatechange = function(){
+ if (request2.readyState == 4) {
+ if (callback!=null) callback.call();
+ }
+ }
+ }
+ }
+ }
+ else {
+ var request = ((window.XMLHttpRequest) ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP"));
+ request.open("GET", logoutURL, true, "logout", "logout");
+ request.send("");
+ }
+}
\ No newline at end of file