From 6fe2fed87e7bee31166682fc2c189b1c9ae369c2 Mon Sep 17 00:00:00 2001 From: allo Date: Fri, 16 Jun 2006 08:04:02 +0000 Subject: [PATCH] cookieauth works with static Admin. git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@2208 6c8d7289-2bf4-0310-a012-ef5d649a1542 --- htroot/User.java | 37 +++++++------ source/de/anomic/data/userDB.java | 55 +++++++++++++++---- source/de/anomic/http/httpdFileHandler.java | 2 +- .../de/anomic/plasma/plasmaSwitchboard.java | 18 ++++-- 4 files changed, 78 insertions(+), 34 deletions(-) diff --git a/htroot/User.java b/htroot/User.java index aa354eb5c..e3091b800 100644 --- a/htroot/User.java +++ b/htroot/User.java @@ -50,6 +50,7 @@ import java.io.IOException; import de.anomic.data.userDB; import de.anomic.http.httpHeader; +import de.anomic.kelondro.kelondroBase64Order; import de.anomic.plasma.plasmaSwitchboard; import de.anomic.server.serverCodings; import de.anomic.server.serverObjects; @@ -57,17 +58,6 @@ import de.anomic.server.serverSwitch; public class User{ - private static String getLoginToken(String cookies){ - String[] cookie=cookies.split(";"); //TODO: Mozilla uses - String[] pair; - for(int i=0;iresult) result=tmp; + return result; + } + public int staticAdminAuthenticated(String authorization){ + if(authorization==null) return 1; if (authorization.length() == 0) return 1; // no authentication information given - if ((((String) header.get("CLIENTIP", "")).equals("localhost")) && (adminAccountBase64MD5.equals(authorization))) return 3; // soft-authenticated for localhost + String adminAccountBase64MD5 = getConfig("adminAccountBase64MD5", ""); + if (adminAccountBase64MD5.length() == 0) return 2; // no passwrd stored if (adminAccountBase64MD5.equals(serverCodings.encodeMD5Hex(authorization))) return 4; // hard-authenticated, all ok - if (userDB.hasAdminRight((String)header.get(httpHeader.AUTHORIZATION, "xxxxxx"))) return 4; - return 0; // wrong password + return 0; } public boolean verifyAuthentication(httpHeader header, boolean strict) {