WebServices - Desenvolvimento Parte 2


por Mauricio Junior em 1/1/2011 0

       Olá pessoal, temos o objetivo de mostrar como funciona o desenvolvimento com permissão de acesso junto do nosso webservice. Foi falado como introdução na primeira parte e no artigo publicado.

 

 

Requisito:

-         Desenvolvimento de Serviços

-         Linguagem: C#.NET

-         Ferramenta: Visual Studio .NET 2003 ou superior

 

 

Referência: 2-1

 

            Lembramos que é de extrema importância ler desde o primeiro artigo publicado, o link está acima. Isso devido à continuação da idéia principal.

            Nós que, fazemos sempre webservice, seguimos todos os requisitos de serviços ou servir dados para outros sistemas e clientes; precisamos sempre prover mais segurança entre os dados acessados e trafegados. Costumamos dizer que “o dado no sistema vale mais que dinheiro”.

            A importância extrema nunca é demais, o problema com hackers e crackers no mundo da internet tem crescido todos os dias; não entraremos nessa discussão, caso contrário seria outro tipo de artigo.

            No webservice de exemplo, é passado como parâmetro sempre o usuário e senha além dos outros para fazer a busca no banco de dados. Fora a utilização do https / ssl que existe no endereço do arquivo .asmx. Mesmo com toda essa parafernália, não é garantido que a pessoa que está utilizando o serviço é o que está autorizado para a utilização. Qualquer pessoa pode acessar o link e ver os métodos disponíveis.

            A nossa idéia é: além de ter usuário e senha para autenticação no banco de dados, exista uma permissão antes dessa autenticação, ou seja, esse parâmetro não é passado durante a chamada do método como string ou int, o mesmo é atribuído dentro da aplicação antes mesmo de chamar o método.

            Depois que for chamado o método, antes de qualquer coisa é verificado esse tipo de permissão de utilização.

            A primeira classe que precisamos importar é:

 

 

using System.Web.Services.Protocols;

 

Referência: 2-2

 

            Criamos uma classe chamada AuthHeader que estende o SoapHeader.

 

public class AuthHeader : SoapHeader

 

Referência: 2-3

 

            Dentro dessa classe, colocamos dois atributos, um chamado UserName e outro Password.

 

public class AuthHeader : SoapHeader
{
    public string Username;
    public string Password;
}

 

Referência: 2-4

 

            Esse tipo de permissão de utilização será mostrado apenas no xml header do envelope soap. Depois de criar a classe que identifica o método “fulano de tal” precisamos ter permissão de autenticação para utilização. Nem todos os métodos precisam dessa autenticação; os que precisam basta colocar o seguinte código. (Referência 2-5)

 

[SoapHeader ("Authentication", Required=true)]

 

Referência: 2-5

 

            Isso significa que para o método “fulando de tal” requer autenticação Header além dos parâmetros de entrada para autenticação do usuário. Fiquem atentos no próximo passo.

 

To be continue...

 

 

 

 

 

 

voltar   comente  subir

 
Mauricio Junior Formado pela Faculdade Anhanguera, Especialista pela FGV (Fundação Getúlio Vargas), Pós-Graduação em Docência Superior e cursando Mestrado na UNB Engenharia Elétrica; .
Tenho 29 anos e possuo sete livros publicados pela editora Ciência Moderna. Sou Certificado Microsoft MCP, MCAD e MVP, faço parte da comunidade ASPNETI.COM, ECODE10.COM, onde publico artigos, vídeos, ebooks e livros Publico artigos, vídeos e podcast em outras comunidades. Trabalho como Analista de Sistemas / Desenvolvedor na empresa ATP S/A. Blog: blog.mauriciojunior.org, Site pessoal www.mauriciojunior.org



Comentários:
Comentado por: Bruno Teles - 18/6/2009 0:00:00
Boa tarde Maurício,

Estou desenvolvendo uma aplicação .net para pocket pc.
Essa aplicação vai rodar no pocket.
Tem como executar uma url de dentro da aplicação através do protocolo http sem abrir o browser?

Atc,

Bruno Teles

Comente (dê sua opinião):
Comentário:
Código Imagem:  (digite o código da imagem respeitando maiúsculo e minúsculo)

Favor digitar o código da imagem para cadastramento.

 

Outros Artigos do Autor

Criando arquivo usando Visual Studio.NET 2005
LG Optimus Black
Ajax parte II
Aprenda com Windows Azure
Keynote iniciando com o Windows Azure
Verifica Browser utilizando C#
Vídeo - Sistema de Atendimento de Clientes
Customizar Setup Layout
MSDN Code Gallery
Conecte - novidades tecnológicas revolucionam a medicina
Usando themes ASP.NET 2.0 (Parte 1)
Montando Menu Dinâmico com Banco de Dados
DateDiff em C#.NET
M-Payment com Google Wallet
Trabalhando com Sessão dentro do Windows Forms
Evento em Brasília de Tecnologia
SELECT INSERT
Windows Phone 7 Jump Start
Vídeo: Análise do Android 3.0 por um especialista
Padronizando Status e Situação
Trabalhando com ENUM
Criando TreeView com Visual Studio.NET 2005 (passo 1)
Vídeo - Mostrando um sistema com pocket pc
Dicas para programar melhor
As várias mensagens do Sistema Operacional
Aspirador de pó inteligente
Enviando E-mail com Anexo
Dispositivos inteligentes a caminho da sua casa
Montando Menu Dinâmico com Banco de Dados
Sort no GridView sem ir ao banco de dados novamente
Vídeo - Teste do Windows 7 RC
Sistema de Login – Parte IV
Como fazer uma enquete - parte 2
ReportViewer sem DataSet Tipado e gerando PDF
A mágica do ResolveURL