Commit ca5e3be5 authored by Amadeu Andrade Barbosa Junior's avatar Amadeu Andrade Barbosa Junior
Browse files

OPENBUS-2108

Release do Core 2.0.0

Merge para o branch 02_00_00


git-svn-id: https://subversion.tecgraf.puc-rio.br/engdist/openbus/core/branches/02_00_00@135862 ae0415b3-e90b-0410-900d-d0be9363c56b
parents 5bc7adc0 abbb7c10
......@@ -5,7 +5,6 @@
[article Manual de Instalação do OpenBus 2.0.0
[quickbook 1.5]
[authors [Roenick, Hugo]]
[id installation]
[copyright 2012 Tecgraf/PUC-Rio]
[source-mode teletype]
......@@ -63,7 +62,7 @@ Esse par de chaves deve ser criado utilizando o comando ['openssl] que acompanha
${OPENBUS_HOME}/bin/openssl genrsa -out tmp_openssl.key 2048
${OPENBUS_HOME}/bin/openssl pkcs8 -topk8 -nocrypt -in tmp_openssl.key -out <nome do par de chaves>.key -outform DER
rm -f tmp_openssl.key
${OPENBUS_HOME}/bin/openssl req -new -x509 -key <nome do par de chaves>.key -keyform DER -out <nome do par de chaves>.crt -outform DER
${OPENBUS_HOME}/bin/openssl req -config $OPENSSL_HOME/openssl.cnf -new -x509 -key <nome do par de chaves>.key -keyform DER -out <nome do par de chaves>.crt -outform DER
``
# Executar o barramento passando as configurações desejadas. Como por exemplo, o par de chaves do barramento.
......@@ -97,6 +96,23 @@ O validador LDAP tem suporte a servidores Microsoft Active Directory e OpenLDAP.
[endsect]
[section:validador Criação de um validador personalizado]
Um validador precisa ser um [link luamodule módulo Lua] que deve retornar uma função que recebe como parâmetro uma tabela de configurações do barramento e retorna uma função ['validator]. A função ['validator] recebe como primeiro parâmetro o nome de usuário e como segundo a senha. Caso o par usuário/senha seja válido deve-se retornar verdadeiro, caso contrário falso. Um exemplo de validador que verifica se o nome do usuário é igual à senha é dado a seguir:
``
local function validator(name, password)
if name == password then
return true
end
end
return function(configs) return validator end
``
Para utilizar um validador como esse pode ser necessário a configuração das variáveis de ambiente LUA_PATH e LUA_CPATH. Caso não esteja familiarizado, consulte o [link luamodule manual da linguagem Lua].
[endsect]
[section:opt Configurações opcionais para administradores do servidor]
No pacote de instalação do barramento existem scripts que auxiliam algumas tarefas diárias comuns ao administrador da máquina onde o barramento está instalado. Esses scripts estão localizados na pasta ['bin] e são eles:
......@@ -300,5 +316,6 @@ Maiores informações sobre a nossa lista de discussão veja [@http://listas.tec
# [#rfc4514] OpenLDAP Foundation. [*RFC 4514 - Lightweight Directory Access Protocol (LDAP): String Representation of Distinguished Names]. 2006. Último acesso em 29 de Junho de 2012. [@http://www.ietf.org/rfc/rfc4514.txt]
# [#ref_openbus] Tecgraf. [*__openbus__ Project]. 2012. [@http://www.tecgraf.puc-rio.br/openbus]
# [#ref_manual] Tecgraf. [*__openbus__ Project - Manual de Referência __version__]. 2012. [@http://www.tecgraf.puc-rio.br/ftp_pub/openbus/docs/2.0.0/reference.html]
# [#luamodule] Roberto Ierusalimschy. [*The Programming Language Lua. Modules]. 2012. [@http://www.lua.org/manual/5.1/manual.html#5.3]
[endsect]
......@@ -144,7 +144,7 @@ $OPENBUS_HOME/bin/busservices --help
${OPENBUS_HOME}/bin/openssl pkcs8 -topk8 -nocrypt \
-in tmp_openssl.key -out <nome do par de chaves>.key -outform DER
rm -f tmp_openssl.key
${OPENBUS_HOME}/bin/openssl req -new -x509 \
${OPENBUS_HOME}/bin/openssl req -config $OPENSSL_HOME/openssl.cnf -new -x509 \
-key <nome do par de chaves>.key -keyform DER \
-out <nome do par de chaves>.crt -outform DER
\end{verbatim}
......@@ -181,6 +181,21 @@ ldap_timeout = 10
\end{verbatim}
\end{description}
\section{Criação de um validador personalizado}
Um validador precisa ser um módulo Lua\cite{web:luamodule} que deve retornar uma função que recebe como parâmetro uma tabela de configurações do barramento e retorna uma função \texttt{validator}. A função \texttt{validator} recebe como primeiro parâmetro o nome de usuário e como segundo a senha. Caso o par usuário/senha seja válido deve-se retornar verdadeiro, caso contrário falso. Um exemplo de validador que verifica se o nome do usuário é igual à senha é dado a seguir:
\begin{verbatim}
local function validator(name, password)
if name == password then
return true
end
end
return function(configs) return validator end
\end{verbatim}
Para utilizar um validador como esse pode ser necessário a configuração das variáveis de ambiente LUA\_PATH e LUA\_CPATH. Caso não esteja familiarizado, consulte o manual da linguagem Lua\cite{web:luamodule}.
\section{Configurações opcionais para administradores do servidor}
No pacote de instalação do barramento existem scripts que auxiliam algumas tarefas diárias comuns ao administrador da máquina onde o barramento está instalado. Esses scripts estão localizados na pasta \emph{bin} e são eles:
......
......@@ -152,7 +152,12 @@ Al
A figura~\ref{fig:architecture}, apresenta a arquitetura do \openbus{} e suas partes principais.
Entraremos em detalhes sobre as partes principais do \openbus{} nas subseções a seguir.
\inputimage[width=0.9\textwidth]{architecture}{Arquitetura do \openbus{}}
\begin{figure}
\centering
\includegraphics[width=\textwidth]{figs/architecture.png}
\caption{Arquitetura do \openbus{}}
\label{fig:architecture}
\end{figure}
\subsection{Barramento}\label{sec:barramento}
......@@ -345,7 +350,7 @@ Dessa forma, sempre que ele
Outra característica importante é que o barramento mantém compatibilidade com a API da versão imediatamente anterior.
Ou seja, mesmo que a versão do barramento evolua, os clientes (serviços e aplicações) ainda conseguem acessar o barramento utilizando bibliotecas de acesso de uma versão anterior.
O \openbus{} utiliza um esquema de versionamento com quatro números, no formato \emph{A.B.C\_D}, onde:
O \openbus{} utiliza um esquema de versionamento com quatro números, no formato \emph{A.B.C.D}, onde:
\begin{itemize}
\item Campos \textbf{A} e \textbf{B} significam a versão da IDL e deve ser igual em todos os pacotes que são compatíveis: versão IDL, barramento e bibliotecas de acesso.
......@@ -353,7 +358,7 @@ O \openbus{} utiliza um esquema de versionamento com quatro n
\item Campo \textbf{D} representa uma versão apenas com correções de falhas.
\end{itemize}
Sendo assim, o barramento 2.0 permite a realização de acesso utilizando as bibliotecas de acesso de versão 1.5.x, onde \emph{x} pode assumir qualquer valor de \emph{C\_D}.
Sendo assim, o barramento 2.0 permite a realização de acesso utilizando as bibliotecas de acesso de versão 1.5.x, onde \emph{x} pode assumir qualquer valor de \emph{C.D}.
Porém, é importante deixar claro que versão 2.0 traz muitas melhorias no quesito de segurança, e essas melhorias não serão usufruídas por clientes que acessam o barramento com versões antigas das bibliotecas de acesso.
O barramento permite que clientes 1.5 se comuniquem com clientes 2.0, e vice-e-versa, porém essas comunicações se realizam com o mesmo nível de segurança que existia na versão 1.5 do barramento.
Esse suporte de compatibilidade com a versão anterior pode ser desabilitado através da opção ``nolegacy''.
......
......@@ -7,6 +7,15 @@ Url = {http://www.lua.org/},
howpublished = "\url{http://www.lua.org/}",
year = {2008}}
@misc{web:luamodule,
Author = {Roberto Ierusalimschy},
Lastchecked = {28 November, 2012},
Month = feb,
TItle = {The Programming Language Lua - modules},
Url = {http://www.lua.org/manual/5.1/manual.html#5.3},
howpublished = "\url{http://www.lua.org/manual/5.1/manual.html#5.3}",
year = {2008}}
@inproceedings{maia06oil,
Author = {Renato Maia and Renato Cerqueira and Ricardo Calheiros},
Crossref = {SFSBRC06},
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment