Exemplo n.º 1
0
 public DoGetAction(IActivityIOPath path, IDev2LogonProvider dev2LogonProvider, IFile fileWrapper, ImpersonationDelegate impersonationDelegate)
     : base(impersonationDelegate)
 {
     _logOnProvider    = dev2LogonProvider;
     _fileWrapper      = fileWrapper;
     _path             = path;
     _impersonatedUser = _impersonationDelegate(_path, _logOnProvider);
 }
Exemplo n.º 2
0
 public DoDeleteOperation(IDeleteHelper deleteHelper, IActivityIOPath path, IDev2LogonProvider logOnProvider, ImpersonationDelegate impersonationDelegate)
     : base(impersonationDelegate)
 {
     _deleteHelper     = deleteHelper;
     _path             = path;
     _logOnProvider    = logOnProvider;
     _impersonatedUser = _impersonationDelegate?.Invoke(_path, _logOnProvider);
 }
Exemplo n.º 3
0
 public DoPathExistOperation(IActivityIOPath path, IDev2LogonProvider dev2LogonProvider, IFile fileWrapper, IDirectory directory, ImpersonationDelegate impersonationDelegate)
     : base(impersonationDelegate)
 {
     _logOnProvider    = dev2LogonProvider;
     _fileWrapper      = fileWrapper;
     _dirWrapper       = directory;
     _path             = path;
     _impersonatedUser = _impersonationDelegate(_path, _logOnProvider);
 }
Exemplo n.º 4
0
 public DoCreateDirectory(IActivityIOPath path, IDev2CRUDOperationTO args, IDev2LogonProvider dev2LogonProvider, IFile fileWrapper, IDirectory directory, ImpersonationDelegate impersonationDelegate)
     : base(impersonationDelegate)
 {
     _logOnProvider    = dev2LogonProvider;
     _fileWrapper      = fileWrapper;
     _dirWrapper       = directory;
     _path             = path;
     _crudArguments    = args;
     _impersonatedUser = _impersonationDelegate(_path, _logOnProvider);
     _handleOverwrite  = RequiresOverwrite(_crudArguments, _path, _logOnProvider);
 }
 public DoGetFilesAsPerTypeOperation(IActivityIOPath path, ReadTypes type, IDev2LogonProvider dev2LogonProvider, IFile file, IDirectory directory, ImpersonationDelegate impersonationDelegate)
     : base(impersonationDelegate)
 {
     _logOnProvider    = dev2LogonProvider;
     _fileWrapper      = file;
     _dirWrapper       = directory;
     _path             = path;
     _type             = type;
     _impersonatedUser = _impersonationDelegate(_path, _logOnProvider);
     _newPath          = AppendBackSlashes(_path, _fileWrapper, _dirWrapper);
 }
Exemplo n.º 6
0
 public DoPutAction(Stream currentStream, IActivityIOPath destination, IDev2CRUDOperationTO crudArgument, string whereToPut, IDev2LogonProvider logOnProvider, IFile fileWrapper, IFilePath pathWrapper, ImpersonationDelegate impersonationDelegate)
     : base(impersonationDelegate)
 {
     _logOnProvider    = logOnProvider;
     _pathWrapper      = pathWrapper;
     _fileWrapper      = fileWrapper;
     _currentStream    = currentStream;
     _destination      = destination;
     _arguments        = crudArgument;
     _impersonatedUser = _impersonationDelegate(_destination, _logOnProvider);
     _whereToPut       = whereToPut;
 }
Exemplo n.º 7
0
        public void TestImpersonation()
        {
            WindowsAuthProviderImpl      windowsAuthProviderImpl = new WindowsAuthProviderImpl();
            IWindowsIdentity             account          = windowsAuthProviderImpl.LogonUser(_testUser.usri1_name, _testUser.usri1_password);
            IWindowsImpersonationContext impersonationCtx = account.Impersonate();

            try
            {
                Console.WriteLine(account.SidString);
                Console.WriteLine(account.Fqn);
                Assert.AreEqual(account.Fqn, WindowsIdentity.GetCurrent().Name);
            }
            finally
            {
                impersonationCtx.RevertToSelf();
                Assert.AreNotEqual(account.Fqn, WindowsIdentity.GetCurrent().Name);
            }
        }