Noções básicas sobre o Active Directory : qualquer usuário pode estar em muitos grupos no AD, o problema é como levá-los até lá. Fazê-lo de forma programática é possível e fácil o suficiente, mas a questão é se a sua política de segurança permite esse tipo de coisa? Quem controla o AD em que o aplicativo deve ser implantado e o quanto ele tem mais a ver com esse tipo de coisa do que os detalhes técnicos reais de adicionar pessoas a grupos. Essas são ótimas perguntas para começar a fazer perguntas antes de chegar à fase de lançamento.
O mesmo acontece para o IIS. As questões políticas são quase sempre maiores do que as técnicas. Perguntar o que você pode e não pode fazer sem causar problemas é um ótimo começo. O uso de diretórios virtuais e sites virtuais é outra coisa boa para se dar uma olhada.
E enquanto você estiver perguntando, aqui estão mais algumas coisas que desejo que mais desenvolvedores tenham interesse em entender.
Um servidor não é uma entidade permanente inalterável , hardware é substituído, ISPs mudam, unidades são preenchidas .. Não codifique coisas como caminhos de arquivos absolutos, endereços IP e nomes de servidores.
Outra grande é saber qual o seu aplicativo realmente precisa ser executado . Em um servidor, ninguém quer realmente ter que instalar todos os recursos porque o desenvolvedor não pode lhe dizer o que está chamando. Um aplicativo que mora na memória para mim é aquele em que acabei tendo que instalar o MSSQL Server 2005 em um servidor da Web apenas porque o código não seria executado sem ele. Eventualmente (meses e horas de trabalho depois) nós descobrimos o que estava acontecendo e como evitar isso. Se não tivesse sido tão importante um aplicativo com essa influência por trás dele, eu teria empurrado de volta e dito "absolutamente não, porque esse é um risco de segurança ENORME"
Esse tipo de coisa causa incômodas dores de cabeça na solução de problemas no back-end. "Funciona na minha máquina" são tão úteis porque você provavelmente tem mais uma tonelada de ferramentas na sua máquina do que queremos instaladas em um servidor. Além disso, um ambiente de teste deve ser o mais próximo possível da produção para eliminar esses tipos de problemas.