Spaces:
Sleeping
Sleeping
Security update
Browse files- .gitignore +2 -1
- Dockerfile +0 -1
- autenticacion.py +4 -0
- conexion_firebase.py +1 -1
- config.json +0 -13
- config_creator.py +34 -0
.gitignore
CHANGED
@@ -3,4 +3,5 @@
|
|
3 |
bridges.py
|
4 |
config.json
|
5 |
config_local.json
|
6 |
-
config_old.json
|
|
|
|
3 |
bridges.py
|
4 |
config.json
|
5 |
config_local.json
|
6 |
+
config_old.json
|
7 |
+
configuracion.py
|
Dockerfile
CHANGED
@@ -8,6 +8,5 @@ RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt
|
|
8 |
|
9 |
COPY . .
|
10 |
|
11 |
-
#RUN chmod -R a+w /code/archivos
|
12 |
|
13 |
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
|
|
|
8 |
|
9 |
COPY . .
|
10 |
|
|
|
11 |
|
12 |
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
|
autenticacion.py
CHANGED
@@ -1,5 +1,7 @@
|
|
1 |
import os
|
2 |
import socket
|
|
|
|
|
3 |
|
4 |
def local_check():
|
5 |
hostname = socket.gethostname()
|
@@ -21,6 +23,7 @@ def defineAmbiente():
|
|
21 |
servidor = "sosa" #o "sosa", depende de donde deduciras el tiempo de gpu cuando pruebas en local.
|
22 |
hora_renovacion = 17
|
23 |
servicio = "desarrollo"
|
|
|
24 |
else:
|
25 |
#print("Entorno remoto listo...")
|
26 |
llave = os.getenv("llave") #Acceso a HF
|
@@ -28,5 +31,6 @@ def defineAmbiente():
|
|
28 |
print("El servidor remoto es: ", servidor)
|
29 |
hora_renovacion = os.getenv("hora_renovacion")
|
30 |
servicio = os.getenv("servicio")
|
|
|
31 |
|
32 |
return llave, servidor, hora_renovacion, servicio
|
|
|
1 |
import os
|
2 |
import socket
|
3 |
+
import config_creator
|
4 |
+
import configuracion
|
5 |
|
6 |
def local_check():
|
7 |
hostname = socket.gethostname()
|
|
|
23 |
servidor = "sosa" #o "sosa", depende de donde deduciras el tiempo de gpu cuando pruebas en local.
|
24 |
hora_renovacion = 17
|
25 |
servicio = "desarrollo"
|
26 |
+
|
27 |
else:
|
28 |
#print("Entorno remoto listo...")
|
29 |
llave = os.getenv("llave") #Acceso a HF
|
|
|
31 |
print("El servidor remoto es: ", servidor)
|
32 |
hora_renovacion = os.getenv("hora_renovacion")
|
33 |
servicio = os.getenv("servicio")
|
34 |
+
config_creator.creaConfigFirestore('firebase_prod')
|
35 |
|
36 |
return llave, servidor, hora_renovacion, servicio
|
conexion_firebase.py
CHANGED
@@ -4,7 +4,7 @@ from firebase_admin import auth
|
|
4 |
from firebase_admin import firestore
|
5 |
from firebase_admin import credentials
|
6 |
|
7 |
-
firebase_cred = credentials.Certificate('config.json')
|
8 |
firebase_admin.initialize_app(firebase_cred)
|
9 |
|
10 |
db = firestore.client(database_id='nowme')
|
|
|
4 |
from firebase_admin import firestore
|
5 |
from firebase_admin import credentials
|
6 |
|
7 |
+
firebase_cred = credentials.Certificate('archivos/config.json')
|
8 |
firebase_admin.initialize_app(firebase_cred)
|
9 |
|
10 |
db = firestore.client(database_id='nowme')
|
config.json
DELETED
@@ -1,13 +0,0 @@
|
|
1 |
-
{
|
2 |
-
"type": "service_account",
|
3 |
-
"project_id": "nowme-images-dea8a",
|
4 |
-
"private_key_id": "5b80469ffe674a059beba453312ed588c2e6406f",
|
5 |
-
"private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQC8WoI+b+BJ1Lo5\nIxiNJ/q7Za1nKaHaScxTvEM12Qa2+roVJnTxJqh0wBeoF+ylWWUdVckSKPwTOC40\nLm1ezb71Wl+EAav+5RRXdiaQbx2PGBGDjn+4pLFvzm/22cH3Sn2N9JzgHvjOgBCP\nTuXm8lSrvE2AeKrJupwXUzebin0/2W7lG2j5aKaWd5AOrOORTU2FHtBsS7mxs+IF\nsY9S29YKxtGZ/yzhG3c/6zprEZPUJXlwjr3otOZJfFObMv7VNmvR9d1D9IgN7CjN\nL3jkcbX9z7+VVMfEEybdQrr05mSoe3Shvo3EwtYIW8Gt7jSCpsZcHRRy8WnGjCHC\nqf/NB4QJAgMBAAECggEAEnfN5jUWQOr7pOtO5pVFUX9NVqyHdwWuJAY1MVgRn1qb\naQQ7qmL72LG2iBfrb0WCA3O0OsR7vd8v8ZQdS3LBPuGg9KqszHn16gL20kng1DVc\nD0IHPimgz7mGMyYkDX0XbTYvNQ74XpgCN6j45BF98ZZNo5OBTHUQhb12Ofkk4YAD\nAEYX0anGgThA5AlBMG6NaztVP1oufxv4k18gMJfA1qRQJLx984VBoqlCOuVRXmT9\npilyFQLnR9a/ucXDhKzVO1/1mjLhZhTCIok9V4LICeE/TXvb+PhsHJoS/eFlty6f\nKHSIB5i/jfhBsdx8jpqN3DmjpBWu42JUi79ZHwOo0QKBgQD6RUbKLjNOQijXEZYd\naa93feLAyafjSQKGE1BqF/DRvympFo/FIssiYTkbbdaLKmcbevwmaFwZQvcNTYFk\nSmhH7ZqVrWWlTgUx1D56+lIji/449DZJOzT4NkKNpO5oeBufUTFERAYLvWUqrfVn\n+jYLHdS4katxLwpe+7SFXWjIUQKBgQDAql0799RGmKGF/4nKPummh2gGL6SLtFA5\nd61whFu/rpUskzS8JYxRWPId3hbvKF4Hn0mlnvlAIWLEPQ0tRDYrGDbZDHeWBr6Y\nJN+vy5ycC1nunqSE59uqBIKcZSR8gcqsNnb85cDAzW7tPxlx+v9tCxRmOqs/aGdQ\nyPHyorPKOQKBgGmZs5350pIx3lOpSwMMJgqwZm5caGfB1bvHCIZLpcSK+cQsDevr\nm3TdOyB0vzMnaCwzP5PhMwNBu0a0rmUn9EptWm3PpXUTr6Nv4BE58FCpcFKN0R4j\nSl11X62uqx4Pl/AobTZV0YtAliBlGIiQDh+wraJXbNSsOZ8MbAZd/KmRAoGAP5o+\nKyTWU/PhJr5EO5rnQU1kHt6tgF0nOsFyZTmcnDvDDTMPbqkqmFQ3oXqGsa7u069W\n/bDscapT05qf9fiVtUZKHP8Ln2BcnRdXLM6Xxb/NkYOXpjRwhMD2aTDOibfDM3TL\ndRNXvY5T90gkW0dT+Sh2NIVbsRQDP10G2mWx2qkCgYBnLTMhcyuh/7HBHyKQsiZz\nzVaLnjf9pOiKdLE6ETERQH0q/LpOxY68iPRkvpTUDdHb8Y5/AK2aYeJ6MKBhE4S1\n4RlIwm80xS7G//GA47FZHFiHI+XEN+gnNzZcHR6vmg1707VkXLTF+I+01+A+mKdf\ncBgEwYp4liDawuNjz8tgSw==\n-----END PRIVATE KEY-----\n",
|
6 |
-
"client_email": "firebase-adminsdk-fbsvc@nowme-images-dea8a.iam.gserviceaccount.com",
|
7 |
-
"client_id": "107709451350786325129",
|
8 |
-
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
|
9 |
-
"token_uri": "https://oauth2.googleapis.com/token",
|
10 |
-
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
|
11 |
-
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/firebase-adminsdk-fbsvc%40nowme-images-dea8a.iam.gserviceaccount.com",
|
12 |
-
"universe_domain": "googleapis.com"
|
13 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
config_creator.py
ADDED
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import os
|
2 |
+
import json
|
3 |
+
|
4 |
+
def creaConfigFirestore(configuracion):
|
5 |
+
|
6 |
+
# Paso 1: Obtener la variable de entorno
|
7 |
+
firestore_config_str = os.getenv(configuracion)
|
8 |
+
|
9 |
+
if firestore_config_str is None:
|
10 |
+
print("Error: La variable de entorno 'configuracion' no está definida.")
|
11 |
+
else:
|
12 |
+
try:
|
13 |
+
# Paso 2: Convertir el string JSON en un diccionario de Python
|
14 |
+
firestore_config_dict = json.loads(firestore_config_str)
|
15 |
+
|
16 |
+
# Paso 3: Definir la ruta COMPLETA del archivo de salida
|
17 |
+
# Esto indica que se debe guardar en la subcarpeta 'code/archivos'
|
18 |
+
ruta_archivo = "archivos/config.json"
|
19 |
+
|
20 |
+
# Paso 4: Asegurarse de que la carpeta de destino exista
|
21 |
+
# os.makedirs() creará la carpeta y sus padres si no existen
|
22 |
+
# El parámetro 'exist_ok=True' evita que falle si la carpeta ya existe
|
23 |
+
os.makedirs(os.path.dirname(ruta_archivo), exist_ok=True)
|
24 |
+
|
25 |
+
# Paso 5: Escribir el diccionario en el archivo en la ruta especificada
|
26 |
+
with open(ruta_archivo, 'w') as archivo_json:
|
27 |
+
json.dump(firestore_config_dict, archivo_json, indent=4)
|
28 |
+
|
29 |
+
print(f"Archivo '{ruta_archivo}' creado exitosamente.")
|
30 |
+
|
31 |
+
except json.JSONDecodeError as e:
|
32 |
+
print(f"Error: El contenido de la variable de entorno no es un JSON válido. Detalles: {e}")
|
33 |
+
except IOError as e:
|
34 |
+
print(f"Error al escribir en el archivo: {e}")
|