Vous trouverez un exemple avec le compte system ici : http://blackninjasoftware.com/2009/04/09/how-to-programmatically-impersonate-users-in-sharepoint/
Il vous faut reproduire la même chose avec un compte spécifique.
Commencez par obtenir votre utilisateur avec cette ligne :
SPUser user = web.EnsureUser(<login_du_user>);
Reccupérez ensuite le token de cet utilisateur avec cette commande :
SPUserToken token = user.UserToken;
Instanciez ensuite un objet SPSite à l'aide de ce token :
string siteUrl = SPContext.Current.Site.Url;
using(SPSite site = new SPSite(siteUrl, token))
{
/// Ajoutez votre code ici
}
Sébastien PICAMELOT -
http://blogs.developpeur.org/gribouillon/