Usuário com melhor resposta
Permissões em Lista Com Grupos Sharepoint e Grupos do Active Directory

Pergunta
-
Boa tarde,
Estou com a seguinte dúvida: Criei uma web part que exibe alguns dados sobre o site. Esses dados somente podem ser exibidos por usuários que fazem parte de um determinado grupo do sharepoint. Caso o usuário não faça parte desse grupo ele exibe uma mensagem qualquer. Bom essa web part estava funcionando até que percebi um erro: Quando eu cadastro um grupo de AD(Active Directory) dentro do Grupo do Sharepoint que tem permissão para exibir os dados, não consigo identificar que o usuário pode visualizar os dados. A Hierarquia é essa:
-----Grupo Sharepoint
-------- Grupo AD
------------- Usuario
Faço a verificação da seguinte forma:
private
bool AccessDenied()
{
SPUser user = SPContext.Current.Web.CurrentUser;
bool pertence = false;
SPSecurity.RunWithElevatedPrivileges(delegate()
{
if (user.Groups.Count == 0)
{
pertence =
false;
}
else
{
if (!user.IsSiteAdmin)
{
foreach (SPGroup grupo in user.Groups)
{
if (grupo.Name.ToUpper() == "TECNICOS")
{
pertence =
true;
break;
}
}
}
else
{
pertence =
true;
}
}
});
return !pertence;
}
Existe alguma forma de descobrir que o usuário esta dentro do grupo do AD que esta dentro do grupo do Sharepoint?
Desenvolvedor.Net
Respostas
-
Obrigado Romano mas consegui resolver o problema.
Para saber se o usuário tem permissão por estar no grupo do sharepoint, mesmo estando no grupo do ad, fiz uma comparação com o grupo do SPWeb.SiteGroups,
Em Seguida utilizei o SPGroup.ContainsCurretUser. Dessa forma consegui verificar se o usuário atual pode acessar a webpart.
Valeu!
Desenvolvedor.Net- Marcado como Resposta Pedro Marques M. Neto terça-feira, 20 de julho de 2010 22:27
Todas as Respostas
-
Marques,
Você poderia alterar o código deste artigo e utilizá-lo da forma que está procurando: http://rodrigo-romano.spaces.live.com/blog/cns!9E20A90BA8FC57D3!333.entry
Entretanto, qual a sua finalidade?
Gostaria de entender melhor a sua necessidade.
Abraços
Rodrigo A. Romano
-
SharePoint Specialist
Microsoft MCP e MCTS
-
http://rodrigo-romano.spaces.live.com
http://www.canalsharepoint.com.br
Rodrigo A. Romano
-
Obrigado Romano mas consegui resolver o problema.
Para saber se o usuário tem permissão por estar no grupo do sharepoint, mesmo estando no grupo do ad, fiz uma comparação com o grupo do SPWeb.SiteGroups,
Em Seguida utilizei o SPGroup.ContainsCurretUser. Dessa forma consegui verificar se o usuário atual pode acessar a webpart.
Valeu!
Desenvolvedor.Net- Marcado como Resposta Pedro Marques M. Neto terça-feira, 20 de julho de 2010 22:27