TFS e Active Directory - Membros do grupo não são preenchidos para o TFS em tempo hábil

3

Estou usando grupos no Active Directory para gerenciar quais usuários podem acessar projetos no TFS. Meu problema é que, mesmo que o AD os mostre no grupo, e até mesmo através do TFS quando eu olho para quem é um membro do grupo, ele mostra ao usuário que o acesso não é concedido imediatamente.

Eu tentei atualizar o processo de trabalho do TFS sem sorte. Uma reinicialização da máquina (o servidor TFS) parece consertá-lo, mas não posso reiniciar meu Controle de Origem toda vez que faço uma alteração no AD.

Como faço o AD "descobrir" as alterações no AD com mais frequência? A partir de agora, leva algum tempo menos de 24 horas para que as mudanças finalmente ocorram e os usuários tenham permissão para entrar no projeto. Além disso, isso estava acontecendo com o TFS 2005 e atualizamos para 2008, e isso ainda está acontecendo.

Alguma idéia?

    
por Captain Cosmodrome 21.10.2009 / 15:52

2 respostas

3

As associações de grupo são enumeradas para o usuário no logon. Quando você faz alterações em uma associação de usuários no AD, o usuário precisa efetuar logout / in da sua máquina para que as alterações entrem em vigor para o usuário. Eu estou supondo que o "menos de 24 horas" que você mencionou é devido ao fato de que eles estão voltando ao trabalho no dia seguinte e entrando na máquina.

    
por 21.10.2009 / 17:27
2

O TFS armazena em cache as informações do Active Directory e, por padrão, é configurado para pesquisar no Active Directory a cada 60 minutos. Reduzi o intervalo no meu servidor adicionando um parâmetro "IdentityUpdatePeriod" em C: \ Arquivos de Programas \ Microsoft Visual Studio 2008 Team Foundation Server \ Serviços da Web \ Services \ web.config

Eu estava vendo alguns erros de sincronização com o Active Directory quando ele estava definido para 5 minutos, então eu mudei para executar a cada 15 minutos (e ainda ver erros de vez em quando .. mas pelo menos eu não tenho que dizer usuários esperem uma hora)

Antes:

  <appSettings>
    <add key="ConnectionString" value="Data Source=[TFS_DATA_TIER_SERVER]\tfs;Initial Catalog=TfsIntegration;Integrated Security=True;Persist Security Info=False;Application Name=TeamFoundation" />
    <add key="eventingEnabled" value="true" />
    <add key="DetailedExceptions" value="false" />
    <add key="emailNotificationFromAddress" value="[email protected]" />
    <add key="smtpServer" value="[smtp_server]" />
  </appSettings>

Depois:

  <appSettings>
    <add key="ConnectionString" value="Data Source=[TFS_DATA_TIER_SERVER]\tfs;Initial Catalog=TfsIntegration;Integrated Security=True;Persist Security Info=False;Application Name=TeamFoundation" />
    <add key="eventingEnabled" value="true" />
    <add key="DetailedExceptions" value="false" />
    <add key="emailNotificationFromAddress" value="[email protected]" />
    <add key="smtpServer" value="[smtp_server]" />
    <add key="IdentityUpdatePeriod" value="0:15:0"/>
  </appSettings>
    
por 09.06.2011 / 01:39