Thread.CurrentPrincipal в консольном приложении .NET

Вот простое консольное приложение, которое я запускаю в командной строке:

using System;
using System.Threading;
namespace Test
{
    internal class Runner
    {
        [STAThread]
        static void Main(string[] args)
        {
            Console.WriteLine(Thread.CurrentPrincipal.GetType().Name);
            Console.WriteLine(Thread.CurrentPrincipal.Identity.Name);
        }
    }
}

На выходе получается 'GenericPrincipal' и пустая строка в качестве имени идентификатора. Почему запускается -time создает GenericPrincipal вместо WindowsPrincipal ? Как заставить его создать WindowsPrincipal из токена безопасности запускаемого процесса (cmd.exe в моем случае) ?

14
задан UserControl 20 December 2013 в 20:10
поделиться