Prévia do material em texto
Verifique o seu desempenho e continue treinando! Você pode refazer o exercício quantas vezes quiser. A B C D E 1 Com base em arquivos XML, o framework Spring oferece diversas opções de configuração para o contêiner de execução, com baixo acoplamento, já que o código Java em si não depende diretamente dos valores especificados, o que permite, inclusive, que o sistema seja reutilizado em outros ambientes, apenas com a redefinição dos arquivos de configuração. Qual a classe de um bean utilizado para configurar a conexão com o banco de dados no XML de configuração? Org.springframework.jdbc.datasource.DriverManagerDataSource Org.springframework.web.context.ContextLoaderListener Org.springframework.orm.jpa.JpaTransactionManager Org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean Org.springframework.web.servlet.view.InternalResourceViewResolver Questão de 10 Corretas Em branco 1 2 3 4 5 6 7 8 9 10 Camada De Controle-… Firefox https://estacio.saladeavaliacoes.com.br/exercicio/691a8625c2d762a619... 1 of 11 16/11/2025, 23:20 A B C D E Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado! A classe correta para configurar a conexão com o banco de dados no XML de configuração é a 'Org.springframework.jdbc.datasource.DriverManagerDataSource'. Esta classe é um bean que permite a configuração da conexão com o banco de dados. Para isso, são fornecidos como parâmetros o nome do driver JDBC, a URL para a conexão com o banco, o usuário e a senha. Após a configuração da conexão, ela pode ser utilizada por um 'EntityManagerFactoryBean' para a criação dos gestores de entidade JPA, com as transações sendo controladas por um bean do tipo 'JpaTransactionManager'. Portanto, a alternativa A é a correta. 2 Para acessar um servidor REST, a partir de um aplicativo Java, podemos efetuar uma conexão HTTP padrão e tratar os dados recebidos em formato JSON, programando o mapeamento para instâncias de classes Java. Embora seja viável, é um processo trabalhoso, sendo possível obter maior produtividade com uma biblioteca específica, criada para facilitar o controle de chamadas HTTP, não importando o método de acesso utilizado. O texto se refere a qual biblioteca? Axios Express Spring Boot Spring Data Retrofit Firefox https://estacio.saladeavaliacoes.com.br/exercicio/691a8625c2d762a619... 2 of 11 16/11/2025, 23:20 A B C D E Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado! O enunciado se refere à biblioteca Retrofit. Esta biblioteca permite criar clientes para servidores REST de maneira simplificada, com base em interfaces anotadas Java. As rotas e métodos HTTP utilizados são definidos por meio de anotações como GET e PUT. Valores passados pelo endereço são capturados com a anotação Path, e o corpo da requisição é obtido com a anotação Body. Após a definição da interface, um objeto Retrofit é instanciado, adicionando um JacksonConverterFactory, que realiza o mapeamento de JSON para Java. Esse objeto é então usado para gerar o cliente REST a partir da interface anterior. As bibliotecas Spring Boot e Spring Data, por outro lado, são utilizadas no servidor REST Java. Existem tecnologias similares no NodeJS, como Express, no lado do servidor, e Axios, no lado do cliente. 3 Temos diversos algoritmos criptográficos, com diferentes finalidades. Entre os referidos algoritmos, tem destaque um algoritmo matemático que transforma qualquer bloco de dados em uma série de caracteres de comprimento fixo que impede a decriptografia, como aquele que é citado na alternativa: 3DES RSA RC4 AES MD5 Firefox https://estacio.saladeavaliacoes.com.br/exercicio/691a8625c2d762a619... 3 of 11 16/11/2025, 23:20 A B C D E Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado! O algoritmo MD5 é um exemplo de criptografia destrutiva, também conhecida como hash. Nesse tipo de criptografia, ocorre a perda de fragmentos dos dados originais, o que impede a decriptografia. Isso a torna útil para a guarda de senhas. Outro exemplo comum desse tipo de algoritmo é o SHA1. Portanto, a alternativa correta é a letra E, que menciona o algoritmo MD5. 4 O uso da arquitetura MVC permitiu uma boa organização das responsabilidades de cada tipo de componente utilizado na programação do aplicativo. Segundo o padrão arquitetural, no ambiente do framework Spring, em que camadas ficariam, respectivamente, uma classe DAO e uma página JSP? View e Model View e Controller Controller e Model Model e View Controller e View Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado! Firefox https://estacio.saladeavaliacoes.com.br/exercicio/691a8625c2d762a619... 4 of 11 16/11/2025, 23:20 A B C D E Na arquitetura MVC �Model-View-Controller), cada componente tem uma responsabilidade específica. A classe DAO �Data Access Object) é responsável pela persistência de dados, ou seja, pela comunicação com o banco de dados. Por isso, ela se encaixa na camada Model, que é responsável por todas as regras de negócio e manipulação de dados. Já a página JSP �Java Server Pages) é responsável pela apresentação dos dados ao usuário, ou seja, pela interface gráfica. Portanto, ela se encaixa na camada View, que é responsável por exibir os dados ao usuário. Assim, a classe DAO e a página JSP ficariam, respectivamente, nas camadas Model e View. 5 O processo de autenticação oferecido pelo Spring Security pode utilizar diferentes modelos, sendo possível configurá-lo a partir dos métodos da classe HttpSecurity, em uma classe anotada como Configuration. Considerando um Web Service do tipo RESTful, com autenticação efetuada ao nível do protocolo HTTP, utilizando os usuários do próprio sistema, qual método da classe HttpSecurity deve ser invocado para que seja configurado o modelo adequado? Oauth2Login PermitAll HttpBasic FormLogin X509 Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado! Para configurar a autenticação ao nível do protocolo HTTP em um Web Firefox https://estacio.saladeavaliacoes.com.br/exercicio/691a8625c2d762a619... 5 of 11 16/11/2025, 23:20 A B C D E Service do tipo RESTful, utilizando os usuários do próprio sistema, o método da classe HttpSecurity que deve ser invocado é o HttpBasic. Este é o padrão para Web Services RESTful. Quando se deseja um formulário de login para sistemas cadastrais via Web, o método a ser invocado é o FormLogin. Para autenticação por terceiros, o método a ser utilizado é o Oauth2Login. Se for necessário trabalhar com certificados digitais para a autenticação, o método apropriado seria o X509. Por fim, o método PermitAll é utilizado para definir um recurso com acesso livre, sem a necessidade de autenticação. 6 Considere um servidor REST que forneça dados climatológicos para um determinado estado, com base em sua sigla, com autenticação padrão, via protocolo HTTP, tendo usuários definidos no próprio sistema. Supondo que você deseja utilizar a consulta disponibilizada pelo servidor a partir de um cliente Java, qual seria a estratégia correta para a implementação? Utilizar uma chamada anotada com GET, a partir de uma interface de serviços baseada no Retrofit, com a interceptação da chamada HTTP e inclusão das credenciais para autenticação. Não é necessária nenhuma modificação na programação do cliente Java. Basta utilizar uma interface de serviços, com base no Retrofit, adicionando apenas usuário e senha ao endereço. Será necessário modificar o mapeamento padrão, com base em JSON, para uso da sintaxe XML, pois o acesso utilizando dados em formato XML não exige autenticação. Utilizar acesso de baixo nível ao servidor REST, via Socket, pois, infelizmente, o Retrofit não oferece suporte para autenticação e não há bibliotecas complementares que possam ser usadas. Utilizar uma chamada anotada com PUT, a partir de uma interface de serviços baseada no Retrofit, com a passagem do usuário e senha no corpo da requisição. Parabéns, você selecionoua alternativa correta. Confira o gabarito Firefox https://estacio.saladeavaliacoes.com.br/exercicio/691a8625c2d762a619... 6 of 11 16/11/2025, 23:20 A B C D E comentado! A questão aborda a implementação de uma consulta a um servidor REST autenticado a partir de um cliente Java. A alternativa correta é a A, que sugere a utilização de uma chamada anotada com GET, a partir de uma interface de serviços baseada no Retrofit. Isso porque, em uma consulta, o método HTTP apropriado é GET. Além disso, como o serviço é autenticado, é necessário incluir as credenciais no cabeçalho da chamada HTTP. Isso é feito através da interceptação da chamada HTTP e inclusão das credenciais para autenticação, com base na biblioteca OkHttpClient. As demais alternativas são incorretas pois sugerem práticas inadequadas ou informações erradas, como a passagem de dados de autenticação no corpo da requisição ou no endereço, a desnecessidade de autenticação ao usar dados em formato XML e a afirmação errônea de que o Retrofit não oferece suporte para autenticação. 7 No framework Spring, temos diversas opções para a autenticação do usuário, onde uma delas seria a utilização de OAuth 2.0. Assinale, dentre as opções abaixo, a alternativa que representa o conjunto de elementos normalmente presentes em requisições realizadas com controle de acesso baseado em OAuth 2.0� Servidor Web ou API, Usuário, Senha, Cookies Cliente, Servidor Criptográfico, Servidor de Banco de Dados, Cookies Cliente, Servidor Web ou API, Servidor de Autorização, Tokens Servidor LDAP, Chave Pública, Chave Privada, Cliente Chave Privada, Chave Pública, Cliente, Servidor Web ou API Firefox https://estacio.saladeavaliacoes.com.br/exercicio/691a8625c2d762a619... 7 of 11 16/11/2025, 23:20 A B C D Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado! O OAuth 2.0 é um protocolo que permite a um cliente obter acesso limitado a um servidor. Ele funciona através de uma série de "papéis" que interagem entre si. No contexto do OAuth 2.0, o "Cliente" é geralmente um navegador web ou um dispositivo móvel que solicita acesso a um servidor. O "Servidor de Autorização" é uma entidade que autentica o cliente e emite tokens de acesso. O "Servidor Web ou API" é o recurso que o cliente deseja acessar. O "Token" é uma string criptografada que representa a autorização concedida ao cliente. Portanto, a alternativa correta é a C, que menciona todos esses elementos: Cliente, Servidor Web ou API, Servidor de Autorização e Tokens. 8 Um dos elementos essenciais da estrutura de segurança do Spring é uma sequência de filtros, criados no padrão Intercept Filter, denominado SecurityFilterChain, que permite avaliar o direito de acesso ao recurso, segundo diferentes combinações de componentes para autenticação e autorização, e próximo ao final da cadeia temos o ExceptionTranslationFilter, muito importante para a conclusão dos processos relacionados ao controle de acesso. Assinale a opção correta acerca do ExceptionTranslationFilter: Independente da ocorrência de exceções, ele invoca doFilter, com passagem da requisição e resposta, para dar continuidade ao fluxo de execução normal. Caso seja verificada uma exceção do tipo AuthenticationException, isso significa que o usuário está logado, mas não tem direito ao recurso. Sempre que temos uma exceção do tipo AccessDeniedException, ocorre o redirecionamento para AuthenticationEntryPoint, para que as credenciais sejam fornecidas adequadamente. Não permite detectar exceções do tipo AuthenticationException quando é utilizado o modelo de autenticação via OAuth 2.0. Firefox https://estacio.saladeavaliacoes.com.br/exercicio/691a8625c2d762a619... 8 of 11 16/11/2025, 23:20 E A B C Caso seja verificada uma exceção do tipo AccessDeniedException, teremos um erro 403 sendo devolvido para o navegador. Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado! O ExceptionTranslationFilter é um componente crucial na estrutura de segurança do Spring. Ele é responsável por lidar com exceções durante o processo de autenticação e autorização. Quando não ocorrem exceções, o fluxo de execução prossegue normalmente. No entanto, quando ocorre uma exceção do tipo AuthenticationException, isso indica que o usuário não está logado. Nesse caso, o fluxo é redirecionado para o AuthenticationEntryPoint, onde as credenciais podem ser fornecidas novamente. Este redirecionamento ocorre independentemente do modelo de autenticação adotado, seja ele um formulário de login, credenciais via HTTP ou OAuth 2.0. Por outro lado, se o usuário estiver logado, mas não tiver direito ao recurso solicitado, ocorrerá uma exceção do tipo AccessDeniedException. Nesse caso, um erro 403 será devolvido para o navegador, indicando que o acesso ao recurso foi negado. 9 Quando adotamos o REST, muitas das chamadas ocorrem com a passagem dos valores no corpo da requisição, de acordo com o método HTTP utilizado, exigindo um modelo simples para a captura desses valores. Trabalhando com um controlador no estilo REST, criado através do framework Spring, qual anotação deve ser utilizada para que o corpo da requisição possa ser automaticamente associado a um parâmetro, no método de tratamento para a rota definida? Path RequestBody Call Firefox https://estacio.saladeavaliacoes.com.br/exercicio/691a8625c2d762a619... 9 of 11 16/11/2025, 23:20 D E A B PathVariable Body Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado! Na implementação de um serviço REST utilizando o framework Spring, a anotação RequestBody é utilizada para capturar os dados enviados no corpo da requisição e associá-los a um parâmetro no método de tratamento da rota definida. Se os dados fossem enviados através do endereço, como em chaves de pesquisa, a anotação PathVariable seria utilizada para capturar esses valores. No lado do cliente, quando se utiliza o Retrofit, a anotação Call é usada para definir métodos de tratamento que permitem comportamento assíncrono. Os dados do corpo são recuperados com a anotação Body, e os valores passados através do endereço são resgatados com a utilização da anotação Path. 10 Com a grande diversidade de plataformas que surgiram ao longo do tempo, acabaram sendo definidas ''ilhas'' de informação, com grande replicação de dados em diferentes sistemas e alta probabilidade de ocorrência de erros na reinterpretação da informação. Surge, então, o conceito de interoperabilidade, definindo meios padronizados para exposição e utilização de serviços em plataformas heterogêneas, o que garante reuso e maior consistência para as informações. Nesse contexto, como seria classificado um componente do tipo WSDL? Sistema de Registro e Localização Protocolo de Comunicação Firefox https://estacio.saladeavaliacoes.com.br/exercicio/691a8625c2d762a619... 10 of 11 16/11/2025, 23:20 C D E Provedor de Serviços Descritor de Serviços Cliente para os Serviços Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado! Em um cenário de serviços interoperáveis, é necessário um provedor para hospedar os serviços, um sistema para registro e descritores para a utilização dos serviços disponíveis. Uma vez que o serviço é localizado e sua utilização é compreendida por meio do descritor, um cliente pode ser gerado, que se comunicará de acordo com o protocolo estabelecido. Nesse contexto, um componente do tipo WSDL �Web Service Description Language) atua como um descritor de serviços. Ele fornece as assinaturas das chamadas e retornos que devem ocorrer, seguindo o protocolo SOAP. Portanto, a alternativa correta é a D� "Descritor de Serviços". Firefox https://estacio.saladeavaliacoes.com.br/exercicio/691a8625c2d762a619... 11 of 11 16/11/2025, 23:20