wag-managment-api-service-v.../api_configs/configs.py

155 lines
4.8 KiB
Python

import datetime
class Config:
INSECURE_PATHS = [
"/",
"/metrics",
"/openapi.json",
"/openapi.json_files",
"/docs",
"/redoc",
"/auth/login",
"/favicon.ico",
"/internal/isbank/retreive",
"/docs/oauth2-redirect",
"/hardware/auth/receive/hardware/token",
"/hardware/auth/hardware/greetings",
"/test/create/test/staff",
"/test/create/test/gateway",
"/test/create/test/company",
"/infos/current_date",
"/authentication/login",
"/authentication/logout",
"/authentication/refresher",
"/authentication/refresh",
"/authentication/disconnect",
"/authentication/create_password",
"/authentication/change_password",
"/authentication/forgot",
"/authentication/avatar",
"/api/Contact/Us/current_date",
]
APP_NAME = "evyos-web-api-gateway"
TITLE = "WAG API Web Api Gateway"
DESCRIPTION = "This api is serves as web api gateway only to evyos web services."
APP_URL = "https://www.wag.eys.gen.tr"
class ApiStatic:
PLACEHOLDER = "https://s.tmimgcdn.com/scr/800x500/276800/building-home-nature-logo-vector-template-3_276851-original.jpg"
FORGOT_LINK = "https://www.evyos.com.tr/auth/create-password/"
BLACKLIST_LINK = "https://www.evyos.com.tr/support/unknown-login-notice/"
APP_DIR = "/home/berkay/git-evyos/api-managment-backend/"
@classmethod
def forgot_link(cls, forgot_key):
return cls.FORGOT_LINK + forgot_key
@classmethod
def blacklist_login(cls, record_id):
return cls.BLACKLIST_LINK + record_id
class Auth:
ACCESS_EMAIL_EXT = "evyos.com.tr"
ACCESS_TOKEN_TAG = "evyos-session-key"
REFRESHER_TOKEN_TAG = "eys_token_refresher"
SECRET_KEY_72 = (
"t3sUAmjTGeTgDc6dAUrB41u2SNg0ZHzj4HTjem95y3fRH1nZXOHIBj163kib6iLybT0gLaxq"
)
SECRET_KEY_96 = "7ct8VpiwaP1hR2bVSet4dEEAgepuTZUOnO1QxOgKyDqBR2PkqNhcubSrbUUigQKoQA1PBoeeQn5ZCo24pESmVtKs76nA4EKq"
SECRET_KEY_144 = (
"R2p5Rq6KCr6PCfjFYUeH1keF2VWHFEuqINVjBGGnvRA2m10pYUKqfOtIGBcaj2v5wZmElDndzSHGOS7roQsoTelPSok0"
+ "qqMucurMWE0FGexGpFuJkfPEm9tH2OjMOqegvEetpSVywH0W4Kh4"
)
ALGORITHM = "HS256"
ACCESS_TOKEN_LENGTH: int = 90
REFRESHER_TOKEN_LENGTH: int = 144
PASSWORD_EXPIRE_DAY = datetime.timedelta(days=30)
TOKEN_EXPIRE_MINUTES_1 = datetime.timedelta(minutes=1)
TOKEN_EXPIRE_MINUTES_15 = datetime.timedelta(minutes=15)
TOKEN_EXPIRE_MINUTES_30 = datetime.timedelta(minutes=30)
TOKEN_EXPIRE_DAY_1 = datetime.timedelta(days=1)
TOKEN_EXPIRE_DAY_5 = datetime.timedelta(days=5)
TOKEN_EXPIRE_DAY_15 = datetime.timedelta(days=15)
TOKEN_EXPIRE_DAY_30 = datetime.timedelta(days=30)
class WagDatabase:
SQL: str = "postgresql+psycopg2"
USERNAME: str = "berkay_wag_user"
PASSWORD: str = "berkay_wag_user_password"
HOST: str = "postgres_commercial"
PORT = "5432"
# HOST: str = "127.0.0.1"
# PORT: str = "5434"
DATABASE_NAME: str = "wag_database"
DATABASE_URL = f"{SQL}://{USERNAME}:{PASSWORD}@{HOST}:{PORT}/{DATABASE_NAME}"
class HagRedis:
REDIS_HOST: str = "hardware_token_service"
REDIS_PASSWORD: str = "hardware_redis_password"
REDIS_PORT: int = 6379
REDIS_DB: int = 0
class WagRedis:
# REDIS_HOST: str = "10.10.2.44"
# REDIS_PORT: int = 11112
REDIS_HOST = "commercial_memory_service"
REDIS_PASSWORD: str = "commercial_redis_password"
REDIS_PORT: int = 6379
REDIS_DB: int = 0
class TestRedis:
REDIS_HOST: str = "localhost"
REDIS_PASSWORD: str = "commercial_redis_password"
REDIS_PORT: int = 11112
REDIS_DB: int = 0
class TestDatabase:
SQL: str = "postgresql+psycopg2"
USERNAME: str = "berkay_wag_user"
PASSWORD: str = "berkay_wag_user_password"
HOST: str = "10.10.2.44"
PORT: str = "5434"
DATABASE_NAME: str = "wag_database"
DATABASE_URL = f"{SQL}://{USERNAME}:{PASSWORD}@{HOST}:{PORT}/{DATABASE_NAME}"
class MongoConfig:
password = "mongo_password"
username = "mongo_user"
database_name = "mongo_database"
# host = "10.10.2.44"
# port = 11122
host = "commercial_mongo_service"
port = 27017
url = f"mongodb://{username}:{password}@{host}:{port}/{database_name}?retryWrites=true&w=majority"
class TestMongo:
password = "mongo_password"
username = "mongo_user"
database_name = "mongo_database"
host = "localhost"
port = 11110
url = f"mongodb://{username}:{password}@{host}:{port}/{database_name}?retryWrites=true&w=majority"
class EmailConfig:
EMAIL_HOST: str = "10.10.2.34"
EMAIL_USERNAME: str = "karatay@mehmetkaratay.com.tr"
EMAIL_PASSWORD: str = "system"
class RelationAccess:
# 77 Evyos superuser of Superuser - 78 all company superuser - 98 Manager of 77 & 78
SuperAccessList = ["77", "78", "98"]