<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Arthur Turrini's blog</title>
	<atom:link href="http://turrini.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://turrini.wordpress.com</link>
	<description>Desenvolvimento de software Open Source.</description>
	<lastBuildDate>Thu, 06 Nov 2008 18:03:19 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>pt-br</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='turrini.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/17157cb0a5122dca130080e1730f451b?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>Arthur Turrini's blog</title>
		<link>http://turrini.wordpress.com</link>
	</image>
			<item>
		<title>Antes de mais nada&#8230;</title>
		<link>http://turrini.wordpress.com/2008/11/06/antes-de-mais-nada/</link>
		<comments>http://turrini.wordpress.com/2008/11/06/antes-de-mais-nada/#comments</comments>
		<pubDate>Thu, 06 Nov 2008 17:46:35 +0000</pubDate>
		<dc:creator>Arthur Turrini</dc:creator>
				<category><![CDATA[Lunar ERP]]></category>
		<category><![CDATA[erp]]></category>
		<category><![CDATA[gpl]]></category>
		<category><![CDATA[gplv2]]></category>
		<category><![CDATA[lunar]]></category>
		<category><![CDATA[open source]]></category>

		<guid isPermaLink="false">http://turrini.wordpress.com/?p=19</guid>
		<description><![CDATA[Boa tarde pessoal,
Um amigo me alertou e é verdade, antes de mais nada preciso avisar aos visitantes que não sabem, que o Lunar ERP ainda não foi concluído, pois está sendo desenvolvido internamente, e após a primeira versão, seus fontes e binários serão publicados, bem como aberto ao público em geral via SVN ou GIT [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=turrini.wordpress.com&blog=4860672&post=19&subd=turrini&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Boa tarde pessoal,</p>
<p>Um amigo me alertou e é verdade, antes de mais nada preciso avisar aos visitantes que não sabem, que o Lunar ERP ainda não foi concluído, pois está sendo desenvolvido internamente, e após a primeira versão, seus fontes e binários serão publicados, bem como aberto ao público em geral via SVN ou GIT (vai depender do que o code.google.com ou sourceforge.net me disponibilizarem na data do lançamento).</p>
<p>É claro que após o lançamento da primeira versão, nem todos os módulos mencionados existirão, afinal, é um trabalho a ser realizado ao longo do tempo. Precisamos então começar uma varredura de bugs e correção dos mesmos, mas nada que vocês colaboradores já não conheçam.</p>
<p>Faltou ainda informar que a licença de todo o ERP é na General Public License 2 (GPLv2), ou seja, que é 100% gratuito e tem código fonte disponível para quem quiser usar, distribuir e modificar para atender às necessidades próprias.</p>
<p>Temos um compromisso, temos uma missão. Entregar um excelente ERP brasileiro para nosso querido país e continuar seu desenvolvimento, aprimorando-o, polindo-o, &#8230;, *-o.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/turrini.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/turrini.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/turrini.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/turrini.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/turrini.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/turrini.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/turrini.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/turrini.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/turrini.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/turrini.wordpress.com/19/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=turrini.wordpress.com&blog=4860672&post=19&subd=turrini&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://turrini.wordpress.com/2008/11/06/antes-de-mais-nada/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">turrini</media:title>
		</media:content>
	</item>
		<item>
		<title>Lunar ERP &#8211; Por dentro da tecnologia &#8211; 1/10</title>
		<link>http://turrini.wordpress.com/2008/11/06/lunar-erp-por-dentro-da-tecnologia-110/</link>
		<comments>http://turrini.wordpress.com/2008/11/06/lunar-erp-por-dentro-da-tecnologia-110/#comments</comments>
		<pubDate>Thu, 06 Nov 2008 12:53:34 +0000</pubDate>
		<dc:creator>Arthur Turrini</dc:creator>
				<category><![CDATA[Lunar ERP]]></category>
		<category><![CDATA[administrador]]></category>
		<category><![CDATA[banco de dados]]></category>
		<category><![CDATA[código aberto]]></category>
		<category><![CDATA[conexão]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[erp]]></category>
		<category><![CDATA[grant]]></category>
		<category><![CDATA[hash]]></category>
		<category><![CDATA[lunar]]></category>
		<category><![CDATA[md5]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[revoke]]></category>
		<category><![CDATA[sgdb]]></category>
		<category><![CDATA[super usuário]]></category>

		<guid isPermaLink="false">http://turrini.wordpress.com/?p=10</guid>
		<description><![CDATA[Bom dia!
Explicar como funciona um sistema comercial não é nada legal e nem divertido, pois a sua forma de funcionamento sempre está amarrada às regras de negócio que a empresa adota.
Então começar falando como é a baixa de um título, a emissão de duplicatas ou como a repimboca da parafuseta tributa o ICMS de cada [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=turrini.wordpress.com&blog=4860672&post=10&subd=turrini&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Bom dia!</p>
<p>Explicar como funciona um sistema comercial não é nada legal e nem divertido, pois a sua forma de funcionamento sempre está amarrada às regras de negócio que a empresa adota.</p>
<p>Então começar falando como é a baixa de um título, a emissão de duplicatas ou como a repimboca da parafuseta tributa o ICMS de cada produto e blá blá blá não é o alvo deste post. Irá ser demonstrado como é possível moldar a regra de negócio como se quer, mas isso posteriormente.</p>
<p>Hoje vamos iniciar uma série de posts falando da tecnologia interna utilizada no Lunar ERP, numa linguagem não muito técnica e procurando ser a mais clara possível, perdoem-me se assim não for.</p>
<p><strong>1) CONEXÃO COM O BANCO DE DADOS</strong></p>
<p>O que vemos por aí, comumente, é que a maioria dos sistemas comerciais (notavelmente os proprietários), conectam no banco de dados como super usuário, isto é, como administrador deste mesmo banco.</p>
<p>Como estamos oferencendo um sistema Open Source para que qualquer empresa possa utilizar, temos que quebrar esse conceito existente em diversos lugares de que a aplicação cliente é super usuário. Imagina o dono de uma empresa com o seguinte pensamento: &#8220;O sistema tem código fonte aberto, será que outras pessoas observando-o podem comprometer os dados do meu banco?&#8221;. No atual sistema de conexão implementado pela maioria, sim.</p>
<p>No sistema proposto pelo Lunar ERP (e que vários outros utilizam, não é nada novo aqui), não. Então conseguiremos assim fazer com que a segurança esteja do lado certo -&gt; do servidor.</p>
<p>Ora, na forma atual de conexão da maioria dos sistemas, onde o super usuário fica no cliente, implementam assim, no mínimo, duas coisas:</p>
<ul>
<li><em>Facilidade para se desenvolver o sistema, pois o desenvolvedor não precisa se preocupar com GRANT&#8217;s e REVOKE&#8217;s;</em><br />
Neste modo, o sistema tem seu próprio método de permissões. Ele conecta no banco como super usuário, e verifica as credenciais do usuário Fulano e senha Ciclano dentro de uma tabela interna.</li>
</ul>
<ul>
<li><em>Risco de algum bug no software ou uma pessoa com capacidade em observar o binário e pegar a senha de conexão de super usuário.</em><br />
Um bug no software poderia transformar um DELETE de um item em algo bem mais amplo podendo apagar uma tabela inteira por exemplo. Ou ainda mais grave se o desenvolvedor não se preocupou e facilitou um SQL injection sem intenção. No caso da pessoa em pegar a senha dentro do binário, nem se comenta, essa parte é a mais fácil de todas e a mais perigosa.</li>
</ul>
<p>No Lunar ERP, cada usuário tem um nome e senha cadastrado no banco de dados, e o servidor mediante procedures e triggers) cuida das permissões emitindo GRANT e REVOKE aonde for necessário e de acordo com o que cada usuário é permitido.</p>
<p>No entanto, para que um usuário não se conecte diretamente ao banco com seu login e senha (para evitar os fuçadores), a senha armazenada neste mesmo é uma mesclagem da senha mestra com o hash de retorno apos o login pedindo permissao de entrada. Sei que ficou bagunçado, mas no esquema a seguir, fica mais fácil de se entender:</p>
<ul>
<li><em>Conecta no banco com o usuario lunar e senha ******  (sempre usando SSL)<br />
</em>Esse usuario lunar tem apenas acesso a algumas funções e mais nada, não é super usuário, e serve justamente para facilitar o login.</li>
</ul>
<ul>
<li><em>Executa a função doLogin(Fulano, Ciclano) -&gt; retorna hash<br />
</em>Esta função verifica nas permissões se o usuário pode logar e outras dependências. Se para ele for possível, retorna a senha hash (um md5) que o cliente usará para logar, ou ainda, se precisar de um número de cartão de acesso, similar ao encontrado nos bancos, a função retornará o pedido do valor X no cartão e a função chamada será a doLoginCartao(Fulano, Ciclano, Número), sendo este número a resposta do primeiro pedido.</li>
</ul>
<ul>
<li><em>Assume senha = md5(senha_mestra + hash)<br />
</em>A senha mestra fica compilada dentro do binário, e serve só como um grau a mais de proteção para evitar que o usuário conecte-se diretamente de forma não assistida</li>
</ul>
<ul>
<li><em>Reconecta no banco agora como usuário Fulano e com o resultado da senha<br />
</em>Vale lembrar que a hash nunca será a mesma após cada conexão, pois o sistema tem um tempo de vida para cada uma gerada (isso é configurável) e cria uma nova quando for necessário</li>
</ul>
<p>Depois disso o sistema procede com as verificações de permissões e etc.</p>
<p>O mais importante aqui não foi falar da conexão em si, e sim frisar que a segurança fica é do lado do servidor, isto é, não podemos deixar de forma alguma que se existam super usuários do lado do cliente e nem formas fáceis para ele se conectar sem ser pelo sistema. Claro, este método está longe de ser perfeito e adequado, mas irá evoluindo com o tempo.</p>
<p>Este foi o processo de conexão. No próximo post explicarei mais detalhes sobre outros aspectos do sistema, no caso, sobre o sistema interno de permissões.</p>
<p>Obrigado <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/turrini.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/turrini.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/turrini.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/turrini.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/turrini.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/turrini.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/turrini.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/turrini.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/turrini.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/turrini.wordpress.com/10/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=turrini.wordpress.com&blog=4860672&post=10&subd=turrini&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://turrini.wordpress.com/2008/11/06/lunar-erp-por-dentro-da-tecnologia-110/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">turrini</media:title>
		</media:content>
	</item>
		<item>
		<title>Primeiro post, primeiras explicações&#8230;</title>
		<link>http://turrini.wordpress.com/2008/11/05/primeiro-post-primeiras-explicacoes/</link>
		<comments>http://turrini.wordpress.com/2008/11/05/primeiro-post-primeiras-explicacoes/#comments</comments>
		<pubDate>Wed, 05 Nov 2008 12:59:15 +0000</pubDate>
		<dc:creator>Arthur Turrini</dc:creator>
				<category><![CDATA[Lunar ERP]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[código aberto]]></category>
		<category><![CDATA[erp]]></category>
		<category><![CDATA[gestão comercial]]></category>
		<category><![CDATA[gratuito]]></category>
		<category><![CDATA[lunar]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[qt4]]></category>
		<category><![CDATA[wms]]></category>

		<guid isPermaLink="false">http://turrini.wordpress.com/?p=3</guid>
		<description><![CDATA[Bom dia caros leitores!
É com grande entusiasmo que irei expor aqui todo os progressos e atividades dos projetos Open Source que estarei desenvolvendo ao longo do percurso, não só por mim, mas também com a colaboração da comunidade *nix em geral para dar gás e força aos projetos, tornando-os cada vez melhores e eficazes  [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=turrini.wordpress.com&blog=4860672&post=3&subd=turrini&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Bom dia caros leitores!</p>
<p>É com grande entusiasmo que irei expor aqui todo os progressos e atividades dos projetos Open Source que estarei desenvolvendo ao longo do percurso, não só por mim, mas também com a colaboração da comunidade *nix em geral para dar gás e força aos projetos, tornando-os cada vez melhores e eficazes <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Vou tornar público aqui, nos próximos posts, algumas screenshots do projeto que vêm me tirando o sono por noites afora: o Lunar ERP, isto é, uma aplicação gerencial nível enterprise para o meio corporativo e comercial.</p>
<p>Esta aplicação está sendo escrita em C++ com Qt4, funcionando em no mínimo 4 plataformas diferentes (*nix, Windows, MacOS X e Mobile -&gt; esta última, em várias), com código fonte aberto, gratuita e sem limites de uso! A aplicação internamente trabalha com threads, SQL sem travar a GUI, suporte total a integração com outros sistemas, uso do banco de dados da forma correta (multi usuário no banco, nada de super usuário), módulos externos e o conceito de painéis de trabalho.</p>
<p>As prioridades são: flexibilidade, eficiência, estabilidade, usabilidade e que seja muito completo. Hoje o idioma padrão é o Português Brasileiro, podendo ser traduzida para outros idiomas pelo Qt4 Linguist.</p>
<p>O banco de dados padrão é o saudoso PostgreSQL (mínimo 8.3), que abarca muito bem as necessidades da aplicação e com performance muito satisfatória! (na verdade sou fã do postgre)</p>
<p>Dentre os módulos tradicionais encontrados em outros ERP&#8217;s, teremos toda a parte de logística (WMS e Frota/Roteirização), CRM, Pesquisa de Preços, Frente de Loja, criação de Encartes (panfletos e propagandas -&gt; mídia) e diversas aplicações para a plataforma móvel compreendendo as arquiteturas que o Qt4 suporta: Symbian S60, Windows Mobile/CE, etc..</p>
<p>O módulo que mais gosto, no entanto, é o NM (Network Manager), que serve para controlar toda a uma rede ou várias em filiais de um ponto central, possuindo controlador de banda, controle patrimonial de equipamentos, administração de equipamentos que possuam acesso SSH/Telnet via templates (AP5131/WS5xxx -&gt; Motorola, IBM 2210, VanGuards, e outros), controle de squid/dhcp/iptables e outras coisinhas mais.</p>
<p>Hoje está sendo construído um framework interno usando estritamente o Qt4 para que mantenha-se o padrão visual e de código dentro do Lunar ERP.</p>
<p>A intenção é atingir desde aquela pequena lojinha com 1 computador até as grandes empresas com várias filiais e vários computadores.</p>
<p>Bem, já falei demais, aguardem novos posts!</p>
<p>Obrigado!</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/turrini.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/turrini.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/turrini.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/turrini.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/turrini.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/turrini.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/turrini.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/turrini.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/turrini.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/turrini.wordpress.com/3/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=turrini.wordpress.com&blog=4860672&post=3&subd=turrini&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://turrini.wordpress.com/2008/11/05/primeiro-post-primeiras-explicacoes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">turrini</media:title>
		</media:content>
	</item>
	</channel>
</rss>