package org.ovirt.engine.core.bll.adbroker; import java.util.ArrayList; import java.util.List; import org.ovirt.engine.core.common.businessentities.AdUser; import org.ovirt.engine.core.common.businessentities.DbUser; import org.ovirt.engine.core.common.businessentities.ad_groups; import org.ovirt.engine.core.common.config.Config; import org.ovirt.engine.core.common.config.ConfigValues; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dal.VdcBllMessages; import org.ovirt.engine.core.dal.dbbroker.DbFacade; import org.ovirt.engine.core.dao.DbUserDAO; public class InternalBrokerUtils { private static final Guid ADMIN_GUID = Guid.createGuidFromString("fdfc627c-d875-11e0-90f0-83df133b58cc"); private static DbUserDAO getDbUserDAO() { return DbFacade.getInstance().getDbUserDAO(); } public static ad_groups getGroupByGroupGuid(Guid groupGuid) { return null; } public static AdUser getUserByUserGuid(Guid userGuid) { AdUser retVal = null; DbUser dbUser = getDbUserDAO().get(userGuid); if (dbUser != null) { retVal = new AdUser(dbUser); } return retVal; } public static AdUser getUserByUPN(String userName) { AdUser retVal = null; DbUser dbUser = getDbUserDAO().getByUsername(userName); if (dbUser != null) { retVal = new AdUser(dbUser); } return retVal; } public static List<ad_groups> getAllGroups() { return new ArrayList<ad_groups>(); } public static List<AdUser> getAllUsers() { List<AdUser> users = new ArrayList<AdUser>(); AdUser user = getUserByUserGuid(ADMIN_GUID); if (user != null) { users.add(user); } return users; } public static UserAuthenticationResult authenticate(String userName, String password, String domain) { UserAuthenticationResult result = null; String adminPassword = Config.<String> GetValue(ConfigValues.AdminPassword).trim(); String adminUser = Config.<String> GetValue(ConfigValues.AdminUser).trim(); String adminDomain = Config.<String> GetValue(ConfigValues.AdminDomain).trim(); if (userName.equals(adminUser)) { if (domain.equalsIgnoreCase(adminDomain)) { if (adminPassword.isEmpty()) { result = new UserAuthenticationResult(VdcBllMessages.USER_FAILED_TO_AUTHENTICATE_ACCOUNT_IS_LOCKED_OR_DISABLED); } else if (adminPassword.equals(password)) { result = new UserAuthenticationResult(); } else { result = new UserAuthenticationResult(VdcBllMessages.USER_FAILED_TO_AUTHENTICATE); } } else { result = new UserAuthenticationResult(VdcBllMessages.USER_FAILED_TO_AUTHENTICATE); } } else { result = new UserAuthenticationResult(VdcBllMessages.USER_FAILED_TO_AUTHENTICATE); } return result; } }