/ / Associação e autenticação do Asp.net - c #, asp.net-mvc, .net-3.5, sqlmembershipprovider

Assinatura e Autenticação do Asp.net - c #, asp.net-mvc, .net-3.5, sqlmembershipprovider

Estou começando a projetar a infraestrutura da webaplicativo desenvolvido com o ASP.NET MVC preview 2 como uma experiência de aprendizado. Eu tenho meu próprio modelo de domínio e esquema de banco de dados que desejo usar para autenticação.

Quero executar uma variante da autenticação da base de função. No entanto, parece que não consigo entender como fazer isso.

Eu tenho um usuário que tem acesso a um "Blog". Como posso executar a autorização onde o usuário está na função esperada, mas onde o usuário pertence ao "Blog" mencionado acima

Um provedor de função personalizado seria necessário ou podedevo executar a lógica em um atributo de autorização para as ações do controlador; consultando o BlogId do usuário autenticado e executando a lógica de autorização lá. Não conheço nenhuma maneira integrada de fazer isso atualmente, mas, se houver, corrija-me.

Se possível, um exemplo de provedor de função personalizado ou atributo de autorização que forneceria essa funcionalidade seria ótimo.

Obrigado

Respostas:

1 para resposta № 1

Parece que o que você está querendo é ocapacidade de ter uma função e uma verificação de propriedade. Por exemplo, um usuário pode ter a função de "autor", mas também precisa ter um relacionamento de propriedade com um blog específico para realmente criar ou atualizar entradas do blog. Usar um provedor de função padrão junto com um atributo de autorização personalizado que saiba como verificar a propriedade - essencialmente uma relação de chave estrangeira específica entre a entidade da ação e a entrada atual do usuário no banco de dados - parece ser uma maneira razoável de abordar esta.

Você pode encontrar algum código de exemplo em minha resposta para isso pergunta semelhante.