Skip to content

Uso em projeto asp.net #190

Closed
Closed

Description

@homerokzam

TesteNFCe v1.zip
Segue, em anexo, exemplo (extraído do próprio projeto teste da biblioteca) em asp.net, com um controller (asp.net mvc) chamado EmitirNFCe para que seja usando em projetos futuros. Deve-se restaurar todos pacotes NuGet, pois os mesmos não estão no arquivo anexo.

O certificado digital A1 deve estar no diretório App_Data. Atentar para o fato de preencher as seguintes variáveis da classe NFCe do pacote TesteNFCe.Helpers: _cnpj, _ie, _razaoSocial, _fantasia, _cep, _codigoUF, _uf, _bairro, _municipio, _logradouro, _nro, _complemento, _consumidorCPF, _consumidorEmail e _pwd.

Activity

  1. MUN1Z commented on Sep 14, 2016

    @MUN1Z

    Têm algum projeto ai de teste em asp pra Nfe?

  2. homerokzam commented on Sep 15, 2016

    @homerokzam
    Author

    Esse exemplo você pode mudar para não ser um serviço, e sim, uma página asp.net. O exemplo está focado em NFCe, mas você pode alterar e adequar para NFe.

  3. brunobertechini commented on Oct 10, 2016

    @brunobertechini

    +1

  4. denernun commented on Feb 2, 2017

    @denernun

    Para uso em ambiente web, eu posso usar apenas certificados A1 ?
    Fiz um exemplo e tanto local, quanto rodando na Amazon, com o arquivo .pfx funciona de boa, mas para o A3, quando tento buscar o serial com o método:

    ListareObterDoRepositorio() ocorre um erro:

    Exception Details: System.ComponentModel.Win32Exception: Invalid type specified

    Line 254: if (!action())
    Line 255: {
    Line 256: throw new System.ComponentModel.Win32Exception(Marshal.GetLastWin32Error());
    Line 257: }
    Line 258: }

    Existe algum exemplo para pegar os dados do certificado A3 pela aplicação Web ?

    Obrigado !

  5. robertorp commented on Feb 2, 2017

    @robertorp
    Contributor

    Pela aplicação web sei não.. mas oque sei e que alguns websites usam um aplicativo desktop pra fazer essa parte de certificado A3 juntamente com uma extensão web

  6. denernun commented on Feb 3, 2017

    @denernun

    É isso mesmo @robertorp , pesquisei bastante e ninguém consegue fazer nada on-line com o A3. Vou converter meu emissor para um serviço e pronto. Ou o cliente usa certificado A1 e fica livre disso.

    Valeu !

  7. marcosgerene commented on Feb 3, 2017

    @marcosgerene
    Contributor

    Bom dia @denernun e @robertorp
    Isto é uma limitação da linguagem/estrutura ou da web em si?

    Como sites iguais ao da fazenda conseguem consumir A3 para download de XML, vincular SAT, etc. sem instalar nada do lado do cliente via Java? E porque isto não poderia ser feito via .Net?

  8. robertorp commented on Feb 4, 2017

    @robertorp
    Contributor

    @marcosgerene Cara não tenho a mínima ideia de como a sefaz acessa o certificado digital, porque eles pegam do repositorio do browser algo do genero eu imagino. Talvez a sefaz tenha um meio de acessar somente dela ou sei lá. (da minha parte nessa questão de certificado A3 é web falta conhecimentos)
    Mas se você pesquisar na internet todos dizem em criar uma especie de monitor no cliente, ate mesmo empresas grandes fazem algo mais ou menos assim. Conta azul é um exemplo disso você baixa um app desktop e instala no pc, e instala a extenção deles, ai de alguma maneira a extenção comunica com o app desktop.
    E pelo que ja pesquisei funciona assim, a sefaz precisa da chave pulica ou privada para abrir o tunel SSL ou seja tem que ter o certificado na hora de abrir a conexão com a sefaz. No caso o app desktop local iria fazer tudo.. Assinar, Enviar, ai sim com o retorno ele enviaria para a web. (Isso foi oque pesquisei)

    @denernum Interessante também seria se você compartilhasse sua solução com nós.. pelo menos um consulta status da sefaz rodando via web com A3

  9. marcosgerene commented on Feb 4, 2017

    @marcosgerene
    Contributor

    Infelizmente no meu caso não tenho experiência com Web, mas acredito que não tenha nada de "especial" para a Sefaz, eu "chuto" que tenha alguma particularidade no Java ou no Browser para tal....

  10. rftd commented on Feb 4, 2017

    @rftd

    A Sefaz não faz nada, na conexão SSL/TLS antes de conectar mandamos a identificação e a chave publica, entre outras informações que o servidor possa exigir, este procedimento é chamado de handshaking com isto a receita sabe quem esta conectando e como descriptografar os dados enviados apenas isso, ela não consegue por exemplo assinar o xml pois não tem acesso ao certificado do cliente isto é impossível de ser feito pois necessitaria de acesso ao hardware do cliente o que seria uma falha seria de segurança.

    Resumindo para usar o A3 em aplicação web só se o certificado estiver fisicamente plugado no servidor onde esta a aplicação caso contraria uma aplicação externa é necessária para o mesmo

  11. marcosgerene commented on Feb 4, 2017

    @marcosgerene
    Contributor

    @rftd matou a pau, obrigado pela elucidação

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions