Island: Remove auth code from Enviroment and EnivormentConfig

This commit is contained in:
Ilija Lazoroski 2021-11-18 18:54:18 +01:00
parent 59d78d5e30
commit 285b0f4156
2 changed files with 1 additions and 45 deletions

View File

@ -23,34 +23,6 @@ class Environment(object, metaclass=ABCMeta):
self._config = config self._config = config
self._testing = False # Assume env is not for unit testing. self._testing = False # Assume env is not for unit testing.
def get_user(self):
return self._config.user_creds
def needs_registration(self) -> bool:
try:
needs_registration = self._try_needs_registration()
return needs_registration
except (AlreadyRegisteredError) as e:
logger.info(e)
return False
def try_add_user(self, credentials: UserCreds):
if not credentials:
raise InvalidRegistrationCredentialsError("Missing part of credentials.")
if self._try_needs_registration():
self._config.add_user(credentials)
logger.info(f"New user {credentials.username} registered!")
def _try_needs_registration(self) -> bool:
if self._is_registered():
raise AlreadyRegisteredError(
"User has already been registered. " "Reset credentials or login."
)
return True
def _is_registered(self) -> bool:
return self._config and self._config.user_creds
@property @property
def testing(self): def testing(self):
return self._testing return self._testing

View File

@ -4,14 +4,11 @@ import json
import os import os
from typing import Dict from typing import Dict
from monkey_island.cc.environment.user_creds import UserCreds
class EnvironmentConfig: class EnvironmentConfig:
def __init__(self, file_path): def __init__(self, file_path):
self._server_config_path = os.path.expanduser(file_path) self._server_config_path = os.path.expanduser(file_path)
self.server_config = None self.server_config = None
self.user_creds = None
self.aws = None self.aws = None
self._load_from_file(self._server_config_path) self._load_from_file(self._server_config_path)
@ -24,7 +21,7 @@ class EnvironmentConfig:
self._load_from_json(config_content) self._load_from_json(config_content)
def _load_from_json(self, config_json: str) -> EnvironmentConfig: def _load_from_json(self, config_json: str):
data = json.loads(config_json) data = json.loads(config_json)
self._load_from_dict(data["environment"]) self._load_from_dict(data["environment"])
@ -32,7 +29,6 @@ class EnvironmentConfig:
aws = dict_data["aws"] if "aws" in dict_data else None aws = dict_data["aws"] if "aws" in dict_data else None
self.server_config = dict_data["server_config"] self.server_config = dict_data["server_config"]
self.user_creds = _get_user_credentials_from_config(dict_data)
self.aws = aws self.aws = aws
def save_to_file(self): def save_to_file(self):
@ -50,16 +46,4 @@ class EnvironmentConfig:
} }
if self.aws: if self.aws:
config_dict.update({"aws": self.aws}) config_dict.update({"aws": self.aws})
config_dict.update(self.user_creds.to_dict())
return config_dict return config_dict
def add_user(self, credentials: UserCreds):
self.user_creds = credentials
self.save_to_file()
def _get_user_credentials_from_config(dict_data: Dict):
username = dict_data.get("user", "")
password_hash = dict_data.get("password_hash", "")
return UserCreds(username, password_hash)