Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
Anhanguera Educacional Ltda. Correspondência/Contato Alameda Maria Tereza, 2000 Valinhos, SP - CEP 13278-181 [email protected] [email protected] Coordenação Instituto de Pesquisas Aplicadas e Desenvolvimento Educacional - IPADE
Trabalho realizado com o incentivo e fomento da Anhanguera Educacional
Cesar Azambuja Batista
Professor Orientador: Esp. Carlos Eduardo Cayres
Curso: Tec. em Redes de Computadores
CENTRO UNIVERSITÁRIO ANHANGUERA DE CAMPO GRANDE
SISTEMA DE SEGURANÇA ELETRÔNICO PARA MONITORAMENTO REMOTO DE AMBIENTES UNIVERSITÁRIOS EM TEMPO REAL
ANUÁRIO DA PRODUÇÃO DE INICIAÇÃO CIENTÍFICA DISCENTE
Vol. XII, Nº. 15, Ano 2009
RESUMO
A informática provocou uma grande revolução tecnológica nos hábitos e costumes da sociedade. A maior parte destas facilidades não teria ocorrido sem um eficiente sistema de comunicação de dados. Hoje, a comunicação é praticamente imprescindível ao ser humano, pois ela economiza tempo, transporte, dinheiro, entre outras coisas. A tendência da sociedade moderna é que utilizemos cada vez mais os meios de comunicação, através da integração dos sistemas. A internet trouxe o mundo para a nossa vida. Para que possamos utilizar todos estes recursos modernos, é necessário que as redes de computadores e as telecomunicações estejam funcionando com eficiência. Dentro deste contexto, o presente artigo apresenta a relevância de um Sistema de Segurança Eletrônico para auxiliar o setor de segurança de ambientes Universitários.�Com o resultado o resultado obtido pretende-se que o Sistema permita monitorar remotamente todo o campus, tendo-se uma visão das principais instalações, permitindo gerenciar com mais rapidez problemas adventos de falta de segurança ou até mesmo de apoio à eventos e comemorações.
Palavras-Chave: segurança; monitoramento remoto; tempo real.
339 Publicação: 3 de fevereiro de 2011
ANUIC_n15_miolo.pdf 339 13/04/2011 09:15:02
340 Sistema de segurança eletrônico para monitoramento remoto de ambientes universitários em tempo real
Anuário da Produção de Iniciação Científica Discente • Vol. XII, Nº. 15, Ano 2009 • p. 339-355
1. INTRODUÇÃO
A segurança hoje é sem dúvida um dos itens mais importantes que devemos levar em
consideração tanto em casa como em outros locais, isso se deve em grande parte à
crescente onda de violência que assolam o país, tendo como principais exemplos os cada
vez mais freqüentes seqüestros relâmpagos com os quais as pessoas têm de se preocupar
nas ruas, os assaltos freqüentes às residências tanto quanto aos estabelecimentos
comerciais, o número de assaltos às residências e comércios particularmente têm
aumentado muito como se vê nos telejornais diariamente, indiscriminadamente e
independente de nível social, diversos estabelecimentos comerciais e residências são
arrombados, invadidos e roubados, e o que é pior, muitas vezes, à luz do dia.
É justamente com a intenção de auxiliar no monitoramento de ambientes, que o
presente trabalho teve como proposta desenvolver um sistema que pudesse monitorar
áreas interna e externas do Centro Universitário de Campo Grande – Unaes I1, com o
intuito de auxiliar a prestação de serviço de segurança do campus da IES.
Na verdade, o Sistema de Monitoramento Remoto disponibilizará aos usuários a
possibilidade de acompanharem através da Internet imagens de locais internos e externos
em qualquer local e horário que este usuário esteja, bastando para isso que no local exista
um computador que possibilite acesso a Internet.
Só o fato de o local ser visto com câmeras em suas dependências internas e
externas já possibilita aos usuários responsáveis pela segurança do local uma visão mais
ampla e segura, para que possa fazer uso de recursos extra de segurança e melhorar o
serviço prestado.
Este artigo está organizado em seções. A primeira seção é essa introdução, a
seção 2 apresenta os objetivos da pesquisa. A metodologia utilizada na realização da
pesquisa é apresentada na seção 3. As informações relacionadas ao desenvolvimento da
pesquisa como a revisão de literatura, o problema abordado, a solução proposta e
implementada são mostradas na seção 4. A forma de abordar os experimentos, os
resultados e as discussões são descritos na seção 5. Por fim, as considerações finais estão
são apresentadas na seção 6.
1 Atual Centro Universitário Anhanguera de Campo Grande.
ANUIC_n15_miolo.pdf 340 13/04/2011 09:15:02
Cesar Azambuja Batista 341
2. OBJETIVO
Um dos objetivos do projeto foi realizar o levantamento das necessidades da estrutura
necessária para desenvolver um Sistema de Segurança Eletrônico que possa ser acessado
remotamente que qualquer lugar que tenha um computador ou dispositivo móvel, que
possua conexão com a internet para monitorar em tempo real de um ambiente
Universitário.
Outro objetivo é fornecer segurança aos usuários do Sistema de Monitoramento
Remoto, pois os usuários terão em mãos a chance de fiscalizar “pessoalmente” como se
encontra o espaço físico interno e externo, se está tudo em ordem, se há algum tipo de
anormalidade que deve ser verificada, se há a necessidade de ligar para algum órgão
público para que o mesmo realize uma visita ao local para realizar a verificação da
situação entre outras coisas.
Com a possibilidade de acessar remotamente imagens dos ambientes, o usuário
poderá acessar o serviço do Sistema de Monitoramento Remoto teoricamente de qualquer
local, desde que este lhe possibilite acesso à Internet o usuário terá total autonomia para,
por exemplo, viajar, trabalhar, ou afastar-se destes locais por um período determinado de
tempo sem, entretanto deixar de proteger seus imóveis, pois estará apto a observar e
proteger seu imóvel o tempo todo, verificar como anda o local ou o que se passa nas
proximidades.
3. METODOLOGIA
O presente projeto seguiu a abordagem de desenvolvimento de sistemas de informação,
dentro dos princípios da Engenharia de Software propostos por Pressman (2006),
Sommerville (2007) e Bezerra (2007).
Em princípio, foi necessário um levantamento teórico sobre as principais
características de um sistema de segurança eletrônico e seus princípios de
desenvolvimento proposto por Nakamura (2004).
Uma vez realizada a fundamentação teórica necessária, teve início o processo de
coleta e análise de requisitos para o sistema em questão. Para isso, foram ouvidos os
professores e funcionários administrativos da instituição, com o objetivo de identificar
suas principais necessidades quanto ao apoio do serviço de segurança oferecido pelo
campus.
Anuário da Produção de Iniciação Científica Discente • Vol. XII, Nº. 15, Ano 2009 • p. 339-355
ANUIC_n15_miolo.pdf 341 13/04/2011 09:15:02
342 Sistema de segurança eletrônico para monitoramento remoto de ambientes universitários em tempo real
A análise de requisitos permitiu a modelagem de todo o sistema, considerando
seus aspectos funcionais, estruturais e tecnologia necessária para o desenvolvimento
propostos por Tanenbaum (2003), Dimarzio (2005), Kurose (2006), Ross (2003) e Rufino
(2003).
O desenvolvimento do projeto seguiu o paradigma da Prototipação, que permite
uma avaliação aprofundada ainda na fase de análise e projeto do sistema desenvolvido.
4. DESENVOLVIMENTO
4.1. Internet
A Internet é uma rede global de computadores que interliga máquinas do mundo todo
formando uma grande comunidade de usuários que, através dela, se comunicam, trocam
dados e informações, realizam todo o tipo transações possíveis e disponibilizam seus
dados para que possam ser compartilhados com os demais usuários da rede.
Sua abrangência é tamanha que até mesmo nos mais remotos locais do globo
pode ser acessada por intermédio de inúmeros equipamentos que fazem uso de diversas
tecnologias que tornam isso possível, entretanto, não podemos deixar de citar que tudo
isso só é possível para uma determinada parcela da população, tendo em vista que o custo
de um computador pessoal (PC) por mais simples que seja ainda é bastante elevado, o que
impossibilita as comunidades mais carentes de terem acesso à Internet.
O que mantém a Internet como uma unidade é o protocolo TCP/IP e o
mecanismo público de fixação de suas normas através dos chamados RFC’s (Request for
Comments), cuja aderência rigorosa é forçada pelo desconforto, que se manifestaria em
dificuldade de comunicação com o resto do mundo, de quem queira, por ventura, se
afastar. Em outras palavras, o volume da Internet no momento é tal que se torna
impossível qualquer tentativa de concorrência com ela. É impossível exagerar, com
relação a este aspecto, a importância da adoção do protocolo TCP/IP.
A própria indústria de “hardware” incorporou este protocolo nos seus produtos e,
hoje em dia, a montagem de uma rede computacional fora dos padrões TCP/IP
provavelmente seria proibitiva em função do seu alto custo e baixa probabilidade de
aceitação. Como conseqüência desta situação, as muitas redes que existiam ainda cinco
anos atrás vêm desaparecendo uma a uma, sendo absorvidas pela Internet. Todas as
tecnologias proprietárias encaixam-se nesta descrição.
Anuário da Produção de Iniciação Científica Discente • Vol. XII, Nº. 15, Ano 2009 • p. 339-355
ANUIC_n15_miolo.pdf 342 13/04/2011 09:15:02
Cesar Azambuja Batista 343
A Internet será o canal de comunicação utilizado para a utilização do Sistema de
Monitoramento Remoto, uma vez que será através dela que o serviço de monitoramento
será oferecido, e de qualquer lugar onde um dos usuários do sistema estiver e quiser
acessar para utilizar os serviços oferecidos poderão fazê-lo, desde que a Internet possa ser
acessada. Por este motivo, ela foi fundamental para a realização deste trabalho, pois todo
ele se baseia em uma aplicação que tem por base a utilização da Internet como meio de
propagação do serviço, campo de atuação do sistema e meio de comunicação entre
usuário final do sistema e fornecedor dos serviços de acesso remoto.
4.2. Linguagem Java
Trata-se de uma linguagem de programação orientada a objetos OOP (Object Oriented
Programing) que foi desenvolvida pela Sun Microsystems, chamam-se assim os modelos
que facilitam todo o processo de desenvolvimento de um software, o que dá ao
programador uma maior flexibilidade durante o desenvolvimento do programa,
permitindo ao mesmo a reutilização de códigos já utilizados anteriormente no mesmo
programa.
Java tem a aparência de C ou de C++, embora a filosofia da linguagem seja
diferente. O leitor que programa em qualquer uma delas, ou em uma linguagem
orientada a objetos, se sentirá mais à vontade e se tornará um bom programador Java em
menos tempo (DEITEL, 2001).
Java é uma linguagem que resultou da soma de tecnologias conhecidas há muito
tempo, mas que até então não encontrava plataformas boas o suficiente para ser utilizada
com todo o seu potencial.
A linguagem Java também possui características herdadas de muitas outras
linguagens de programação: Objectie C, Smalltalk, Eiffel, Modula 3 etc. Muitas das
características desta linguagem não são totalmente novas. Java é uma feliz união de
tecnologias testadas por vários centros de pesquisa e desenvolvimento de software
(DEITEL, 2001).
O Poder da Combinação Java+Web:
• distribuir aplicações e não apenas informações;
• elimina a necessidade de portar aplicações;
• elimina a necessidade de instalação por parte do usuário final;
• corte de gastos com distribuição de software;
• alcançar milhões de pessoas instantaneamente.
Anuário da Produção de Iniciação Científica Discente • Vol. XII, Nº. 15, Ano 2009 • p. 339-355
ANUIC_n15_miolo.pdf 343 13/04/2011 09:15:02
344 Sistema de segurança eletrônico para monitoramento remoto de ambientes universitários em tempo real
Java – As Vantagens de se Programar pela Rede:
• seguro;
• compacto;
• independente de plataformas;
• programas executam localmente;
• capacidade de atualização contínua.
Características da Linguagem Java:
• uma linguagem de programação orientada a objetos;
• independência de plataformas;
• não utiliza ponteiros;
• tem alocação dinâmica de memória em tempo de execução;
• utiliza multithreading;
• mesma sintaxe usada em diferentes tecnologias (Building Dynamic Website with Java Servlets Tecnology, 2000).
Características Avançadas da Linguagem Java:
• Exceções: Java implementa exceções do mesmo estilo do C++, ajudando na construção de “Código Seguro”; quando um erro ocorre este pode ser tratado adequadamente, através da exceção gerada.
• Interface Gráfica: Java implementa vários elementos usados para construir a interface gráfica do usuário, como caixa de entrada de dados, botões, rótulos, listas, campos de textos, barras rolantes e tabelas.
• Frames: Em Java, Frame é a janela básica usada para criar uma interface gráfica com o usuário. No appletviewer da Sun, a classe Frame é a classe básica usada na construção da interface usada pelo applet que está sendo visualizado.
• Threads e Multithreads: A linguagem Java dá suporte à criação de múltiplos threads. Multithread significa que se pode ter várias tarefas em uma aplicação Java executando simultaneamente. Aumenta a performance das aplicações Java.
• Entrada e Saída em Arquivos: Todas as linguagens fornecem alguns mecanismos de interação com sistema de arquivos local; Java não é uma exceção. Segurança é um detalhe que se deve ter sempre em mente. Classes de objetos de manipulação de I/O estão no pacote java.io.
Java e HTML:
• rótulo applet foi adotado como padrão. O rótulo <Applet>....</Applet> extende do HTML;
• é ignorado se for visualizado em um browser que não suporta Java;
• logo estarão aparecendo editores WYSIWYG JAVA/HTML.
Acesso a Banco de Dados:
• JDBC – interface padrão para acesso a base de dados SQL;
Anuário da Produção de Iniciação Científica Discente • Vol. XII, Nº. 15, Ano 2009 • p. 339-355
ANUIC_n15_miolo.pdf 344 13/04/2011 09:15:03
Cesar Azambuja Batista 345
• fornece uma interface uniforme para acesso a uma grande variedade de base de dados relacionais;
• permitir que aplicações JDBC executem usando drivers ODBC existentes.
Portabilidade
Criada para ser portável, seu compilador gera durante sua utilização um “byte-code” para
a sua utilização específica que pode ser transportado entre plataformas distintas que
suportam Java (Solaris 2.3, Windows NT, Windows 95, Mac/OS etc).
Não é necessário recompilar um programa para que ele rode numa máquina e
sistema diferente, ao contrário do que acontece, por exemplo, com programas escritos em
C e outras linguagens (DEITEL, 2001).
Esta portabilidade é importante para a criação de aplicações para a heterogênea
Internet. Em Java um inteiro, por exemplo, tem sempre 32 bits independentemente da
arquitetura. O próprio compilador Java é escrito em Java, de modo que ele é portável para
qualquer sistema que possua o interpretador de “byte-codes”. Um exemplo de programa
escrito em Java é o browser hotjava (DEITEL, 2001).
Orientada a Objetos
A portabilidade é uma das características que se inclui nos objetivos almejados por uma
linguagem orientada a objetos. Em Java ela foi obtida de maneira inovadora com relação
ao grupo atual de linguagens orientadas a objetos (DEITEL, 2001).
Java suporta herança, mas não herança múltipla. A ausência de herança múltipla
pode ser compensada pelo uso de herança e interfaces, onde uma classe herda o
comportamento de sua superclasse além de oferecer uma implementação para uma ou
mais interfaces.
Java permite a criação de classes abstratas. Outra característica importante em
linguagens orientadas a objetos é a segurança, dada a sua importância, o tópico foi escrito
à parte (DEITEL, 2001).
Segurança
A presença de coleta automática de lixo, evita erros comuns que os programadores
cometem quando são obrigados a gerenciar diretamente a memória (C, C++, Pascal) a
eliminação do uso de ponteiros, em favor do uso de vetores, objetos e outras estruturas
substitutivas traz benefícios em termos de segurança.
Anuário da Produção de Iniciação Científica Discente • Vol. XII, Nº. 15, Ano 2009 • p. 339-355
ANUIC_n15_miolo.pdf 345 13/04/2011 09:15:03
346 Sistema de segurança eletrônico para monitoramento remoto de ambientes universitários em tempo real
O programador é proibido de obter acesso à memória que não pertence ao seu
programa, além de não ter chances de cometer erros comuns tais como “reference aliasing”
e uso indevido de ponteiros. Estas medidas são particularmente úteis quando pensarmos
em aplicações comerciais desenvolvidas para Internet (DEITEL, 2001).
Ser “strongly typed” também é uma vantagem em termos de segurança, que está
aliada a eliminação de conversões implícitas de tipos de C++.
A presença de mecanismos de tratamentos de exceções torna as aplicações mais
robustas, não permitindo que elas abortem, mesmo quando rodando sobre condições
anormais. O tratamento de exceções será útil quando for modelada situações tais como
falhas de transmissão e formatos incompatíveis de arquivos.
Servlets
A Web é uma imensa aplicação distribuída onde existem diversos servidores de conteúdo
e clientes destes servidores que acessam seu conteúdo. Cada par servidor Web–browser
corresponde a um par cliente-servidor. O conteúdo das páginas Web pode ser estático ou
dinâmico.
Quando o conteúdo é estático temos que os documentos HTML residentes no
servidor que são simplesmente entregues aos clientes mediante uma requisição e
renderizados nos clientes pelos próprios browsers.
Quando o conteúdo é dinâmico temos que ele pode ser criado no próprio cliente,
através do JavaScript, Dynamic HTML,ou applets Java numa situação caracterizada como
client-side ou client-end. O conteúdo dinâmico pode também ser criado do lado servidor
através de programas ou scripts CGI, aplicações server-side e agora servlets.
Servlets são peças de código Java que operam do lado servidor. Num certo
sentido, enquanto as applets operam do lado cliente, as servlets operam de forma
complementar do lado do servidor, mas diferentemente das applets que não tem acesso
aos recursos existentes na máquina do cliente, as servlets tem acesso aos mesmos recursos
disponíveis para as aplicações server-side, isto é, acesso ao sistema de arquivos, bancos de
dados locais ou outras conexões da rede.
As Servlets oferecem vantagens substanciais em termos de performance pois
podem permanecer ativas continuamente eliminado o overhead imposto pela carga dos
programas CGI a cada solicitação de serviços.
Outra vantagem óbvia é a questão da portabilidade, apontando para um largo
uso de servlets num futuro muito próximo.
Anuário da Produção de Iniciação Científica Discente • Vol. XII, Nº. 15, Ano 2009 • p. 339-355
ANUIC_n15_miolo.pdf 346 13/04/2011 09:15:03
Cesar Azambuja Batista 347
Geração Dinâmica de Páginas HTML
Os servlets podem ser instalados em servidores Web para processar informações
transmitidas via http a partir, por exemplo de formulários HTML.
As aplicações podem incluir acesso a Banco de Dados ou comunicação com
outros servlets.
Balanceamento de Carga entre Servidores
Para entender como utilizar servlets para fazer balanceamento de carga, considere a infra-
estrutura de um provedor de serviços via Internet composta de cinco servidores, dos
quais, quatro são capazes de executarem as mesmas aplicações. O servidor restante seria
responsável por monitorar a carga dos demais e receber o acesso inicial de cada cliente às
aplicações e em seguida redirecionar os pedidos de acesso para um dos quatro servidores
de aplicação, conforme a ocupação de cada um no momento em que o cliente tenta
estabelecer uma conexão. Assim, o cliente passa a trocar informações somente com o
servidor que foi alvo do redirecionamento.
Modularização do Código
Um servlet pode executar outro servlet, mesmo que remotamente, desta forma é possível
executá-los em corrente. Esta característica possibilita a modularização dos aplicativos,
criando servlets com funções específicas. Suponha que para acessar um conjunto de
aplicativos, o cliente deva ser autenticado. Neste caso, uma configuração possível seria de
criar um servlet responsável apenas pela tarefa de autenticação.
Uma vez autenticado, este servlet redirecionaria o cliente para outro servlet, não
necessariamente instalado no mesmo servidor, que executaria o aplicativo. A vantagem
deste tipo de arquitetura, é que se por alguma razão for necessário modificar o
procedimento de autenticação, por exemplo, pela do banco de dados de usuários, não será
necessário reescrever toda a aplicação, e sim apenas o servlet responsável pela
autenticação.
Java Servlet Developer Kit - JSDK
Trata-se de uma API Java que, quando compilada responde requisições de páginas HTML
e qualquer outra tecnologia Java. Trabalha com servidor por multi-thread, trata cookies com
muita segurança, além de possuir estrutura orientada a objeto, o que aumenta a
modularização do sistema (nedprof.usf.com.br).
Anuário da Produção de Iniciação Científica Discente • Vol. XII, Nº. 15, Ano 2009 • p. 339-355
ANUIC_n15_miolo.pdf 347 13/04/2011 09:15:03
348 Sistema de segurança eletrônico para monitoramento remoto de ambientes universitários em tempo real
A função do JSDK é simplificar a tarefa de desenvolver aplicações baseadas no
servidor. O toolkit proporciona melhorias que facilitam o desenvolvimento de aplicações
Java no lado do servidor, os chamados Servlets (nedprof.usf.com.br).
O Java Servlet possui como principal característica rodar em qualquer tipo de
servidor. Esse kit oferece algumas ferramentas necessárias para a criação de Servlets.
Vantagens dos Servlets
Independência de plataforma:
Os Servlets podem rodar em qualquer plataforma sem serem restritos ou até mesmo
compilados novamente. Os Scripts Perl, por serem interpretados, também possuem esta
funcionalidade, mas são muito lentos. As aplicações CGI necessitam de alta performance
são escritas em C.
Performance:
Um novo programa CGI é carregado para cada requisição ao servidor, isto quer dizer que
para dez requisições simultâneas, terá dez programas iguais na memória. Os servlets são
carregados apenas uma vez. E para cada nova requisição gera um novo thread. O método
init() do servlet assim como na applets, ocorre apenas na primeira vez que a classe é
carregada. É normalmente neste método que se estabelece uma conexão com o banco de
dados. Cada uma das threads geradas pode usar a mesma conexão aberta no método init(),
este tipo de tratamento aumenta e muito o tempo de performance do servlet, já que a
conexão ao banco de dados é feita apenas uma vez e todas as outras requisições usam esta
conexão.
Extensibilidade:
Com Java pode-se criar aplicações muito mais modulares, tirar todo proveito da
orientação a objetos, e utilizar o grande número de API’s disponíveis pela Sun ou
terceiros.
Acesso Remoto
Um dos principais responsáveis pelo grande crescimento da rede mundial de
computadores é o acesso a banco de dados, facilitando a visualização de informações
disponíveis em rede. Estas informações, em diferentes formatos, podem ser facilmente
acessadas e apresentadas través de interfaces gráficas.
As aplicações originalmente desenvolvidas para Web não acessavam informações
armazenadas em bancos de dados.
Anuário da Produção de Iniciação Científica Discente • Vol. XII, Nº. 15, Ano 2009 • p. 339-355
ANUIC_n15_miolo.pdf 348 13/04/2011 09:15:03
Cesar Azambuja Batista 349
Recentemente, a linguagem de programação Java tem adquirido grande
popularidade. Com o objetivo de possibilitar o acesso a banco de dados a partir de
programas desenvolvidos nesta linguagem, foi definida uma interface de programação
denominada JDBC. Ela possibilita a execução de enunciados SQL, sendo composta por
um conjunto de classes através das quais os programadores podem escrever aplicações
que acessem bancos de dados de forma padronizada. A interface apresenta características
independentes do banco de dados, possibilitando que os programas sejam escritos da
mesma forma, independentemente do banco de dados acessado.
Através da interface de programação JDBC, é possível estabelecer uma conexão
com uma base de dados, enviar comandos SQL e processar os resultados. A combinação
de Java com JDBC possibilita o desenvolvimento de aplicações que fazem acesso a bancos
de dados inteiramente em Java e que podem ser executadas em plataformas diversas. A
interface JDBC é, portanto, a escolha natural para programadores Java.
Banco de Dados
Um Banco de Dados pode ser definido como sendo um conjunto de “dados” devidamente
relacionados. Por “dados” podemos compreender como “fatos conhecidos” que podem
ser armazenados e que possuem um significado implícito. Porém, o significado do termo
“banco de dados” é mais restrito que simplesmente a definição dada acima. Um banco de
dados possui as seguintes propriedades:
• é uma coleção lógica de dados com um significado inerente;
• é projetado, construído e populado com dados para um propósito específico, e possui um conjunto pré-definido de usuários e aplicações;
• representa algum aspecto do mundo real (mini-mundo);
• pode ser criado e mantido por um conjunto de aplicações desenvolvidas especialmente para esta tarefa ou por um “Sistema Gerenciador de Banco de Dados” (SGBD).
Um SGBD permite aos usuários criarem e manipularem bancos de dados de
propósito geral. O conjunto formado por um banco de dados mais as aplicações que
manipulam o mesmo é chamado de “Sistema de Banco de Dados”.
Banco de Dados na Web
A rede é um dos maiores meios de comunicação entre as pessoas, e assim sendo, é
também uma grande forma de se trocar informações entre bases de dados.
Anuário da Produção de Iniciação Científica Discente • Vol. XII, Nº. 15, Ano 2009 • p. 339-355
ANUIC_n15_miolo.pdf 349 13/04/2011 09:15:03
350 Sistema de segurança eletrônico para monitoramento remoto de ambientes universitários em tempo real
Segurança
Além de todas as questões de segurança que já vem embutidas ao se usar bancos de
dados, ou seja, que são necessárias pelo simples fato de se usar um banco de dados, a
coisa piora ainda mais quando se coloca tudo isso na rede.
Segurança na Web
Segurança na rede e criptografia são tópicos que se confundem. Criptografia é baseada em
algoritmos complexos desenvolvidos para prevenir a sua quebra por pessoas indesejáveis.
Alguns algoritmos importantes são de propriedade (oficialmente secretos) e só estão
disponíveis para aqueles que são licenciados.
Algumas tecnologias de segurança de rede são:
• Firewalls: controla o tráfego em gateways de subredes chaves.
• Virtual Private Networks: assegura links de subredes.
• Vulnerability Scanners: checa todos os hosts para vulnerabilidade de segurança.
• Sniffers/Monitors: observa o tráfego a nível de aplicação em subredes em tempo real.
Para a implementação de um Sistema de Monitoramento Remoto, é importante o
uso de um firewall, tendo em vista que os dados podem ser acessados remotamente pelos
usuários do sistema, o que demanda de um maior número de ferramentas de segurança a
fim de que os dados dos usuários não sejam extraviados e utilizados para fins ilícitos.
5. RESULTADOS
5.1. Sistema de Monitoramento Remoto
Trata-se de um Website dinâmico implementado utilizando-se Servlets e HTML, onde os
usuários terão acesso ao sistema através de um login e senha, fornecidos aos mesmos após
seu cadastro no Banco de Dados do site. Ao acessar a página de login e após concluída a
validação do usuário, os mesmos poderão acessar imagens de locais internos e externos
de qualquer lugar onde possam ter acesso a um computador com conexão com a Internet.
As imagens, após terem sido capturadas por câmeras e gravadas no servidor,
serão disponibilizadas ao usuário do sistema, sendo que o número de câmeras e os locais
onde elas estarão fixadas serão de escolha e conhecimento do usuário que irá determinar
conforme suas necessidades e possibilidades.
Anuário da Produção de Iniciação Científica Discente • Vol. XII, Nº. 15, Ano 2009 • p. 339-355
ANUIC_n15_miolo.pdf 350 13/04/2011 09:15:03
Cesar Azambuja Batista 351
A Figura 1 mostra a tela de acesso do sistema, que realiza a validação dos
usuários através da comparação entre as strings nome e senha cadastradas no Banco de
Dados e as capturadas nos respectivos campos login e senha da página inicial do sistema.
Figura 1 – Tela de Acesso ao Sistema.
A Figura 2 mostra a tela de visualização das imagens gravadas no servidor que é
atualizado a cada 30 segundos. As imagens mostram a movimentação de pessoas em
algumas áreas da Unaes I, como; área de convivência em frente à cantina, área interna do
teatro, entrada do teatro e um dos laboratórios.
Anuário da Produção de Iniciação Científica Discente • Vol. XII, Nº. 15, Ano 2009 • p. 339-355
ANUIC_n15_miolo.pdf 351 13/04/2011 09:15:03
352 Sistema de segurança eletrônico para monitoramento remoto de ambientes universitários em tempo real
Figura 2 – Imagens visualizadas pela Internet.
5.2. Ferramentas Utilizadas
Na elaboração do Sistema de Monitoramento Remoto foram utilizados os seguintes
softwares para auxiliar na criação dos componentes que irão compor o sistema como um
todo:
• Microsoft FrontPage: utilizado para a criação das páginas HTML, pois o mesmo possui uma interação com o usuário muito amigável e apresenta excelentes resultados finais.
• Internet: Utilizada desde o início da realização deste projeto, esta ferramenta contribuiu na realização de pesquisas sobre todos os conceitos citados anteriormente e também contribuiu com os inúmeros exemplos práticos que servirão de base e exemplo para a criação do site principal deste projeto.
• Java Development Kit (JDK 1.2.1): É uma série de bibliotecas de classes organizadas em pacotes, que oferece um conjunto de ferramentas para a criação de programas em Java.
• Bluette 1.5: É a ferramenta de desenvolvimento java utilizada tanto na implementação das servlets como na construção de applets, embora estes últimos não serão utilizados neste Trabalho Final de Graduação, são igualmente importantes nas aplicações Java e vastamente empregados na Web.
• Java Servlet Development Kit (JSDK 2.1): É também uma série de bibliotecas de classes, mas que possibilita a criação de programas em Java com requisições cliente/servidor (servlets).
• JDBC/ODBC bridge: A ponte JDBC/ODBC (Java Database Connectivy
Anuário da Produção de Iniciação Científica Discente • Vol. XII, Nº. 15, Ano 2009 • p. 339-355
ANUIC_n15_miolo.pdf 352 13/04/2011 09:15:03
Cesar Azambuja Batista 353
Open Database Connectivy) será utilizada por ser compatível com uma larga faixa de banco de dados que possuem ODBC. O ODBC permite que aplicativos acessem banco de dados utilizando SQL.
• Microsoft Access: Banco de Dados que será utilizado para guardar as informações mantidas pelo sistema.
5.3. Requisitos do Sistema
Para o correto funcionamento do Sistema de Monitoramento Remoto, faz-se necessário
que algumas exigências sejam preenchidas:
• Uma conexão com a Internet (tanto no lado Cliente como no lado Servidor).
• Suporte ao protocolo TCP/IP (padrão nas aplicações para Web dentre outras).
• Sistema operacional compatível com a tecnologia oferecida pela linguagem Java.
• Suporte a aplicações Java Servlets.
• Um Browser para visualização das páginas do Sistema.
• Banco de dados Microsoft Access 97 ou posterior (somente no lado Servidor).
• Sistema Operacional que ofereça suporte à tecnologia Java.
5.4. Restrições do Projeto
Durante o desenvolvimento deste projeto, não foi levado em consideração a taxa de
transmissão de dados (velocidade da conexão) do usuário, tendo em vista que o mesmo
pode utilizar-se tanto de um modem comum de acesso discado, que atinge teoricamente
um pico máximo de 56 kbps, ou um modem ADSL, acesso via rádio ou ainda outras
tecnologias de comunicação, pois em função desta diferença a aplicação não apresentará o
mesmo comportamento com relação a desempenho para todos os usuários do sistema; ou
ainda problemas oriundos de defeitos físicos, que podem ocorrer nos meios de
comunicação, nas máquinas cliente ou no servidor.
6. CONSIDERAÇÕES FINAIS
Com a popularização da Internet e o barateamento no custo dos serviços de acesso à Web
existe uma forte tendência de que a maioria das pessoas que hoje não podem usufruir dos
benefícios que a Internet oferece, possam, em muito pouco tempo, também fazer parte
desta comunidade de internautas. Isso já está acontecendo, pois as escolas públicas quase
Anuário da Produção de Iniciação Científica Discente • Vol. XII, Nº. 15, Ano 2009 • p. 339-355
ANUIC_n15_miolo.pdf 353 13/04/2011 09:15:03
354 Sistema de segurança eletrônico para monitoramento remoto de ambientes universitários em tempo real
que em sua totalidade já contam com laboratórios de informática com acesso à rede para
seus alunos.
O acesso às mais variadas bases de dados remotamente já é uma rotina para a
maioria dos usuários da Web, todavia, serviços na área de segurança física seja ela de
pessoas, móveis ou imóveis é bem mais restrito, eu diria até mesmo que é quase
inexistente, em se tratando especificamente do tipo de sistema tratado na presente
fundamentação teórica.
O que este sistema oferece é a possibilidade de disponibilizar para seu usuário
imagens que podem ser das dependências internas e externas, a qualquer hora do dia ou
da noite (vinte e quatro horas por dia) e em qualquer lugar que o usuário esteja, desde que
neste local haja um computador com acesso à Internet, é a condição que torna possíveis e
viabiliza a prestação deste serviço de monitoramento à distância. Isso mostra que o acesso
é possível mesmo com o usuário em deslocamento, desde que o mesmo possua um
notebook, ou um palmtop com tecnologia que possibilite acesso à rede para que ele possa
usufruir desse sistema.
Para trabalhos futuros pode-se implementar o tratamento das imagens
capturadas diretamente de webcam com atualização instantânea dos frames, ou seja, obter
imagens em tempo real.
O presente trabalho demonstra é que com um pouco de esforço, muita dedicação
e estudo, é possível oferecer um sistema que monitora ambientes utilizando pura e
simplesmente os meios e ferramentas já difundidas na Web, encontradas em praticamente
todos os microcomputadores pessoais.
REFERÊNCIAS
BARNES, David J.; KÖLLING, Michael. Programação orientada a objetos com java: uma introdução prática utilizando o bluej. São Paulo: Pearson Education Brasil, 2006.
BEZERRA, Eduardo. Princípios de análise e projeto de sistemas com UML. 2.ed. Rio de Janeiro: Elsevier, 2007.
DEITEL, P.J. Java: como programar. Porto Alegre: BOOKMAN, 2001.
DIMARZIO, J.F. Projeto e arquitetura de redes: um guia de campo para profissionais de TI. [il]. Rio de Janeiro: Campus, 2005. 370 p. ISBN 85-352-0877-1.
KUROSE, James F.; ROSS, Keith W. Redes de computadores e a Internet: uma abordagem top-down. 3.ed. São Paulo: Pearson Education Brasil, 2006. 634 p. ISBN 85-88639-18-1.
NAKAMURA, Emilio Tissato; GEUS, Paulo Lício de. Segurança de redes em ambientes cooperativos. [il]. 3.ed. São Paulo: Futura, 2004. 472 p. ISBN 85-7413-179-2.
PRESSMAN, Roger S. Engenharia de Software. 6.ed. São Paulo: McGraw-Hill, 2006.
Anuário da Produção de Iniciação Científica Discente • Vol. XII, Nº. 15, Ano 2009 • p. 339-355
ANUIC_n15_miolo.pdf 354 13/04/2011 09:15:03
Cesar Azambuja Batista 355
Anuário da Produção de Iniciação Científica Discente • Vol. XII, Nº. 15, Ano 2009 • p. 339-355
ROSS, John. O livro de WI-FI: instale, configure e use redes Wireless (sem-fio): cobertura em Windows, Macintosh, Linux, Unix e PDA’s. Rio de Janeiro: Alta Books, 2003. 246 p. ISBN 85-7608-024-9.
RUFINO, Nelson Murilo de O. Segurança em redes sem fio: aprenda a proteger suas informações em ambientes Wi-Fi e Bluetooth. [il]. São Paulo: Novatec, 2005. 224 p. ISBN 85-7522-070-5.
SOMMERVILLE, Ian. Engenharia de Software. 8.ed. São Paulo: Pearson Education, 2007.
TANENBAUM, Andrew S. Redes de computadores. [il]. Rio de Janeiro: Campus, 2003. 945 p. Tradução da 4.ed. ISBN 85-352-1185-3.
ANUIC_n15_miolo.pdf 355 13/04/2011 09:15:03
ANUIC_n15_miolo.pdf 356 13/04/2011 09:15:03