> **EXAME DE OPOSICIÓN (BATERÍA 2): CORPO DE INFORMÁTICA** **Concello de Ferrol - Bloque Lexislativo e Técnico** **Instruccións**: - O exame consta de 10 preguntas de diversas tipoloxías. - As preguntas tipo Test requiren marcar a opción correcta e xustificar brevemente por que as outras son erróneas ou por que esa é a exacta. - As preguntas de desenvolvemento non deben superar os 2000 caracteres. - Idiomas: Alternancia aleatoria entre Galego e Castelán. # PREGUNTA 1 (Tipo Test - Lexislación) En relación con la Constitución Española de 1978 y la suspensión de los derechos y libertades (Tema 1), ¿cuál de las siguientes afirmaciones es jurídicamente correcta de acuerdo con el artículo 55 de la Carta Magna? - A) Los derechos a la huelga, a la libre sindicación y a la negociación colectiva quedan suspendidos de forma automática en todo el territorio nacional en el momento en que el Gobierno declara el estado de alarma para hacer frente a una crisis sanitaria. - B) La suspensión individual de determinados derechos (como la duración máxima de la detención preventiva o el secreto de las comunicaciones) solo puede realizarse en relación con las investigaciones correspondientes a la actuación de bandas armadas o elementos terroristas, requiriendo siempre autorización judicial y control parlamentario. - C) El estado de excepción permite suspender el derecho a la inviolabilidad del domicilio y al secreto de las comunicaciones, pero el derecho a la libertad y seguridad personal (artículo 17) no puede verse afectado bajo ningún concepto durante este régimen excepcional. - D) La declaración del estado de sitio suspende de forma inmediata el derecho a la tutela judicial efectiva de los ciudadanos, traspasando todas las competencias de la jurisdicción ordinaria a los tribunales militares de manera permanente y sin posibilidad de recurso. ## Justificación obligatoria: Esta es sencilla y sería la **B**. El derecho de sindicalización no se ve afectado por el estado de alarma, así como el de negocación colectiva, además de que no se especifica en ningún momento el tipo de alarma que pueda ser como el sanitario; en la C lo que está mal realmente es el derecho a la libertad y seguridad pues se ve parcialmente afectado por los derechos que atañe el estado de Excepción; y la D no tiene sentido pues en todo momento existe esa tutela judicial. ## Corrección - **O teu resultado**: **CORRECTO (Opción B)**. - **A túa xustificación**: Moi boa. Identificas perfectamente que o dereito de folga e sindicación non se suspende no estado de alarma, e que a opción C é falsa porque o artigo 17 (liberdade e seguridade) si pode verse afectado en estado de excepción/sitio. # PREGUNTA 2 (Resposta curta - Técnica) No ámbito dos Sistemas Operativos (Tema 32), explique brevemente a diferenza técnica entre un "proceso" e un "fío" (thread) en sistemas baseados en Linux. Como podería un administrador de sistemas identificar os fíos activos dun proceso concreto desde a consola de comandos? Xustifique a súa resposta. ## Resposta e xustificación: Un proceso pode constar de múltiples fíos. Básicamente, un proceso é un traballo que está afacer unha aplicación, mentres que un fío de proceso é unha canle pola que se van procesando cada unha das partes das que se conforma un proceso cara a matemática e lóxica do procesador. Para listar os fíos dun proceso pódese facer uso do PID do mesmo sobre `top` ou `htop`. Ademais, coa filosofía de Linux conforme todo é un arquivo, poderiase chegar a éste mediante arquivos do sistema. ## Corrección - **O teu resultado**: **CORRECTO**. - **Análise técnica**: Excelente definición. Un proceso ten o seu propio espazo de memoria reservado, mentres que os fíos (threads) do mesmo proceso comparten ese espazo de memoria pero teñen o seu propio fío de execución no procesador. - **Mellora de comandos**: A túa mención a `top`/`htop` e ao sistema de arquivos `/proc` é brillante. Para que sexas aínda máis preciso na consola de comandos: - Na consola de Linux, os fíos dun proceso pódense ver con: `top -H -p ` ou co comando `ps -T -p `. # PREGUNTA 3 (Desenvolvemento conciso - Lexislación Local) Desenvolva o ciclo de vida do Orzamento Municipal regulado no Real Decreto Lexislativo 2/2004 (Texto Refundido da Lei Reguladora das Facendas Locais - Tema 6). Explique brevemente as fases de elaboración, aprobación provisional, exposición pública, aprobación definitiva e a súa entrada en vigor. Máximo 2000 caracteres. ## Resposta: Buf, aquí pilláchesme de ven, pero creo que son capaz de desenvolver case todos os puntos de memoria. 1. Fanse unhas previsións a partires dos orzamentos do Municipio, das entidades locais que colgan del e das entidades mercantís co mesmo factor de colgar del. 2. Faise un catálogo coa previsión de gastos cara os servizos e custes que se teñan de forma xeral vinculantes aos tres grupos anteriormente mencionados. 3. Plantéxanse para o Pleno. Se non se aproban teñen que refacerse. 4. Se o Pleno o aproba se publica no BOP. 5. Entrarían en vigor o primeiro día do ano. 6. En caso de non haber acordo dos orzamentos, os do ano anterior prorróganse indefinidamente ate que haxa consenso e aprobación dos novos, sen posibilidade de gastos especiais ou adicionáis salvo para gastos vinculantes aos servizos, soldos e demais gastos previstos. ## Corrección - **O teu resultado**: **CORRECTO (Moi bo desenvolvemento de memoria)**. - **Análise**: Para ser unha pregunta de desenvolvemento baseada puramente na memoria, estruturaches os pasos de xeito moi lóxico. - **Mellora xurídica (Terminoloxía)**: En caso de que fose un exame escrito de desenvolvemento, deberías usar estes termos oficiais: - **Elaboración**: Corresponde ao Presidente da entidade local (Alcalde), que forma o orzamento xeral cos estados de gastos e ingresos. - **Aprobación inicial**: Corresponde ao Pleno. - **Exposición pública**: Unha vez aprobado inicialmente, exponse ao público por **15 días hábiles** no BOP para que os interesados presenten reclamacións. - **Aprobación definitiva**: Se hai reclamacións, o Pleno resólveas e apróbao definitivamente. Se non as hai, considérase definitivamente aprobado de xeito automático. Publícase resumido por capítulos no BOP. - **Entrada en vigor**: O 1 de xaneiro do exercicio correspondente (coa prórroga automática se non hai orzamento novo, tal e como indicaches perfectamente). # PREGUNTA 4 (Tipo Test - Control de versións) No contorno de desenvolvemento de software moderno e traballo en equipo con Git (Tema 27), que diferenza fundamental existe entre realizar unha integración de ramas mediante `git merge` en comparación con `git rebase`? - A) `git merge` reescribe o historial do repositorio movendo a base da rama actual ata o último commit da rama destino, o que xera un historial lineal e limpo, mentres que `git rebase` mantén o historial intacto creando un "commit de fusión" (merge commit) que une ambas ramas de forma non destructiva. - B) A instrución `git rebase` permite integrar os cambios dunha rama noutra aplicando os commits un a un de forma secuencial sobre a punta da rama de destino, reescribindo así o historial de commits, mentres que `git merge` preserva o historial cronolóxico orixinal creando un commit de fusión específico para conectar ambas as dúas liñas de desenvolvemento. - C) O uso de `git merge` só é posible en contornos de desenvolvemento locais e monousuario polo risco de perda de datos, mentres que `git rebase` é o único comando seguro para sincronizar ramas remotas nun servidor central como GitHub ou GitLab. - D) Ambos comandos fan exactamente o mesmo a nivel de memoria e de historial de commits; a única diferenza é que `git rebase` execútase de xeito asíncrono para non bloquear o fío principal do contorno de desenvolvemento en proxectos con grandes volumes de código. ## Xustificación obrigatoria: Aquí diría que é a **B** polo comportamento de ambos. A A é contraria totalmente; na C ambos son para entornos remotos; e la D non ten sentido por mor de non ser un proceso multifío ou bloqueante propiamente nun periodo tan longo como para requerir semellante desplegue. ## Corrección - **O teu resultado**: **CORRECTO (Opción B)**. - **A túa xustificación**: Impecable. Identificas correctamente que `rebase` reescribe o historial movendo os commits á punta da rama destino, mentres que `merge` mantén a liña cronolóxica cun commit de fusión. # PREGUNTA 5 (Resposta curta - Lexislación) De acuerdo con la Ley 40/2015 de Régimen Jurídico del Sector Público (Tema 5), diferencie jurídica y técnicamente los conceptos de "Sede Electrónica" y "Portal de Internet" de una administración pública local (como el Concello de Ferrol). ¿Por qué es crítico no confundir ambos términos a nivel de validez jurídica? Justifique su respuesta. ## Respuesta y justificación: El Portal de Internet es el sitio Web por el que acceder a los servicios de la Entidad, ya sea una Web, una Sede Electrónica o cualquier otro servicio en línea vía Web; mientras que la Sede Electrónica es el sitio Web donde comunicarse con la Administración para poder gestionar trámites, notificaciones, etc. ## Corrección - **O teu resultado**: **CORRECTO, PERO MELLORABLE NO RIGOR**. - **Análise**: A diferenza conceptual téñela clara (Portal = web informativa, Sede = trámites), pero a diferenza xurídica clave radica na **responsabilidade e validez**. - **Mellora de redacción**: - *Proposta formal*: "A diferenza radica en que o **Portal de Internet** é un punto de acceso de carácter puramente informativo. Pola contra, a **Sede Electrónica** goza de validez xurídica e implica a responsabilidade da Administración respecto á integridade, veracidade e actualización da información e os servizos aos que se accede, requirindo sistemas de identificación e sinatura electrónica segura." # PREGUNTA 6 (Tipo Test - Ciberseguridad/Criptografía) En el contexto de la protección de datos y la criptografía (Tema 22), ¿cómo se garantiza técnicamente la autenticidad, la integridad y el no repudio de un documento administrativo digital mediante el mecanismo de "Firma Digital"? - A) El emisor cifra el documento completo utilizando su propia clave pública. El receptor, al recibirlo, lo descifra con la clave privada del emisor, confirmando que solo el emisor pudo haberlo enviado y que el documento no ha sufrido alteraciones. - B) El emisor genera un hash único del documento y lo cifra con la clave pública del receptor. El receptor descifra dicho hash con su clave privada y lo compara con el hash que él mismo genera del documento recibido para verificar que no ha sido alterado. - C) El documento se envía en texto claro junto con un hash del mismo que ha sido cifrado con la clave privada del emisor. El receptor descifra este hash (firma) utilizando la clave pública del emisor y comprueba que coincide exactamente con el hash que él mismo calcula a partir del documento recibido. - D) Se utiliza un algoritmo de cifrado simétrico (como AES-256) donde tanto el emisor como el receptor comparten una clave secreta única previamente acordada para cifrar y descifrar el hash del documento. ## Justificación obligatoria: Esta pregunta tiene mal las respuestas. La autenticidad, la Integridad y el no Repudio se garantizan a partir de cifrar la información con la clave pública del receptor para ser enviada exclusivamente a éste pues es el único que tiene la clave privada capaz de descifrarlo. Los Hashes sólo valen para verificar que no hubo cambios en la información, es decir, la integridad, pero el no repudio y la autenticidad parten del concepto anterior. El tema de que se pueda descrifrar un Hash es un concepto errado pues el Hash es irreversible, salvo casos especiales como los MD5 en ciertos casos muy concretos y por vulneración, no porque esté pensado así. Por tanto, no hay ninguno que encaje en todo esto pues la primera hace el proceso inverso, el segundo descifra un Hash, el tercero también, y el cuarto habla de un ámbito de simetría cuando realmente es asimétrico mediante clave pública y privada por parte de cada participante. ## Corrección - **O teu resultado**: **INCORRECTO (Opción correcta: C)**. - **Análise do teu erro**: Indicaches que a pregunta estaba mal redactada porque "descifrar un hash é un concepto errado xa que o hash é irreversible". Aquí hai unha confusión de conceptos moi común: - Tes toda a razón en que a función hash ($h(x)$) é irreversible (non podes obter o documento orixinal a partir do seu hash). - **Pero o que se cifra e descifra na firma dixital non é o documento, senón o propio hash**. Cando o emisor cifra o hash coa súa clave privada ($Key_{private}$), está realizando unha operación criptográfica reversible (asimétrica). O receptor colle ese bloque cifrado e desfrácao coa clave pública do emisor ($Key_{public}$). Ao descifralo, obtén o hash orixinal. Logo calcula o hash do documento recibido e compáraos. - Polo tanto, a **Opción C** describe con total exactitude científica o estándar da Firma Dixital. # PREGUNTA 7 (Resposta curta - Técnica) No desenvolvemento de aplicacións web e conexión a bases de datos (Temas 11 e 15), en que consiste unha vulnerabilidade de Inxección SQL (SQL Injection) e por que o uso de "consultas parametrizadas" (Prepared Statements) resolve este problema de seguridade de maneira efectiva? Xustifique a súa resposta. ## Resposta e xustificación: O SQL Injection ou inserión de SQL é unha práctica na cal, un campo que se saiba vaia contra unha base de datos, facer a drede unha acción SQL cubrindo dito campo, como pode ser o clásico peche de comiña sabendo que estamos nun campo String para poder continuar con outros datos ou incluso execucións. As consultas parametrizadas son un sistema que soen vir nas librerías de conexión contra bases de datos que posicionan ou nomean as variables e estas encárganse de procesar os valores das variables de forma controlada para evitar este e outros tipos de posibles problemas sobre a consulta orixinal. ## Corrección - **O teu resultado**: **CORRECTO**. - **Análise técnica**: Explicación perfecta de como funciona o ataque (rompendo as comiñas da cadea SQL). O uso de *Prepared Statements* (consultas parametrizadas) soluciona isto porque o motor da base de datos precompila a consulta e trata os parámetros introducidos polo usuario estritamente como *datos*, nunca como *código executable*, anulando calquera intento de inxección. # PREGUNTA 8 (Desenvolvemento conciso - Lexislación) De conformidad con la Ley 31/1995 de Prevención de Riesgos Laborales (Tema 7), exponga cuáles son las obligaciones principales de los empleados públicos en materia de prevención, así como el derecho de los mismos a la paralización de la actividad en caso de riesgo grave e inminente en sus puestos de trabajo. Máximo 2000 caracteres. ## Resposta: Tienen la obligación de advertir o avisar a los superiores o al coordinador de Riesgos Laborales de posibles problemas que puedan vulnerar su seguridad y la de sus compañeros; así como hacer uso de los EPIs que la entidad les dé para su protección personal e individual. Han de seguir los protocolos ante un riesgo o peligro, y en caso de que dicho riesgo sea grave e inminente, incluso tienen el derecho a paralizar las actividades que están llevando a cabo en esos momentos hasta que se subsane el problema, estimado en un tiempo de 24 horas. ## Corrección - **O teu resultado**: **CORRECTO (Con matices nos prazos)**. - **Análise**: Os deberes dos empregados públicos están moi ben definidos (uso de EPIs, informar de riscos, cooperar coa administración). - **Mellora xurídica (Paralización)**: O dereito á paralización (Art. 21 LPRL) establece que ante un risco grave e inminente o traballador ten dereito a interromper a súa actividade. Tamén o poden acordar por maioría os representantes dos traballadores (Delegados de Prevención). A mención que fas de "24 horas" débese a que se o empresario non aproba a paralización e son os representantes quen a decretan, deben comunicalo inmediatamente á Autoridade Laboral, quen ten un prazo de **24 horas** para anular ou ratificar dita paralización. É bo que o precises así no exame. # PREGUNTA 9 (Tipo Test - Monitorización TIC) No marco da xestión de infraestruturas de sistemas e a súa monitorización (Tema 33), que diferenza de arquitectura e funcionamento existe entre as ferramentas de código aberto Nagios e Zabbix? - A) Nagios está deseñado especificamente para a monitorización baseada en axentes que requiren execución de scripts pesados no cliente, mentres que Zabbix utiliza exclusivamente o protocolo SNMP sen posibilidade de instalar axentes locais. - B) Nagios funciona mediante un modelo de "pull" (obtencción activa) onde o servidor central realiza enquisas periódicas executando plugins externos, mentres que Zabbix ofrece un deseño máis moderno baseado en base de datos nativa que soporta tanto recollida activa (pull) como o envío de datos desde axentes lixeiros de forma pasiva ou activa (push). - C) Zabbix é unha ferramenta sen base de datos que garda toda a información en arquivos de texto plano para mellorar o rendemento de lectura, mentres que Nagios precisa obrigatoriamente dun motor de bases de datos relacional para funcionar. - D) Nagios só monitoriza hardware físico mediante sensores de temperatura e voltaxe, mentres que Zabbix está enfocado unicamente á monitorización do rendemento de bases de datos relacionais. ## Xustificación obrigatoria: Aquí direi que a máis correcta é a **B**, pero non estou de todo dacordo con dito resultado. A A é falso por mor de que Zabbix tamén pode ter Axentes e túnes polo que comunicarse coas diferentes máquinas que monitoriza; logo Zabbix ten unha base de datos moi grande e pesada que pode ser PostgreSQL entre outras tecnoloxías como MySQL/MariaDB, ainda que se aconsella o uso de PostgreSQL pola natureza dos datos que se van a traballar en relación ao funcionamento interno do monitor, e Nagios pode funcionar a partires de sistemas de aviso vía SMTP entre outros servizos; e finalmente, a D queda moi lonxe do que é capaz Nagios e Zabbix coas súas capacidades. ## Corrección - **O teu resultado**: **CORRECTO (Opción B)**. - **A túa xustificación**: Excelente. Nagios depende de plugins externos e dun sistema máis antigo de consultas activas, mentres que Zabbix ten un motor integrado que soporta bases de datos relacionais robustas (como PostgreSQL) e permite axentes en modo activo/pasivo. # PREGUNTA 10 (Resposta curta - Lexislación) En el ámbito de un Ayuntamiento como el de Ferrol, y según el Reglamento General de Protección de Datos (RGPD) y la LOPDGDD (Tema 30), ¿es obligatoria la designación de un Delegado de Protección de Datos (DPD / DPO)? Si es así, ¿cuál debe ser su posición organizativa y qué funciones principales debe desempeñar dentro de la entidad? Justifique su respuesta. ## Respuesta y justificación: Sí, y debe de ser un funcionario. Sus tareas es coordinar el ámbito de la seguridad de los datos con la actividad del Concello. No vale una entidad o persona externa, sólo se pueden contratar servicios de seguridad externos pasando por el DPD. ## Corrección - **O teu resultado**: INCORRECTO NUNHA PARTE CRÍTICA. - **Análise**: É obrigatoria a designación dun DPD nos Concellos (Art. 37.1.a do RGPD)? **Si, absolutamente** (por ser unha autoridade/organismo público). - **O teu erro**: Afirmas que "debe ser un funcionario" e que "non se poden contratar servizos externos". Isto é xuridicamente incorrecto. O artigo **37.6 do RGPD** di textualmente: - *"El delegado de protección de datos podrá formar parte de la plantilla del responsable o del encargado del tratamiento [funcionario ou laboral], o desempeñar sus funciones en el marco de un contrato de servicios [empresa ou profesional externo]".* - *Moitos concellos pequenos ou medianos teñen o DPD externalizado mediante un contrato de servizos de consultoría, ou incluso compartido.*