/// <inheritdoc/> protected override NetworkCredential Prompt(string target, WindowsCredentialsFlags flags) { if (flags.HasFlag(WindowsCredentialsFlags.IncorrectPassword)) { Log.Error(string.Format(Resources.InvalidCredentials, target)); } return(WindowsCredentials.PromptCli(target, flags)); }
public static NetworkCredential PromptDialog([NotNull] string target, WindowsCredentialsFlags flags, [CanBeNull] string title = null, [CanBeNull] string message = null, IntPtr owner = default(IntPtr)) { #region Sanity checks if (string.IsNullOrEmpty(target)) throw new ArgumentNullException(nameof(target)); #endregion if (!WindowsUtils.IsWindowsXP) throw new PlatformNotSupportedException(); var usernameBuffer = new StringBuilder(1000); var passwordBuffer = new StringBuilder(1000); var credUI = CreateCredUIInfo(owner, title, message); bool persist = true; int result = NativeMethods.CredUIPromptForCredentials(ref credUI, target, IntPtr.Zero, 0, usernameBuffer, MaxUsernameLength, passwordBuffer, MaxPasswordLength, ref persist, flags); HandleResult(result); return new NetworkCredential(usernameBuffer.ToString(), passwordBuffer.ToString()); }
public static NetworkCredential PromptCli([NotNull] string target, WindowsCredentialsFlags flags) { #region Sanity checks if (string.IsNullOrEmpty(target)) { throw new ArgumentNullException(nameof(target)); } #endregion if (!WindowsUtils.IsWindowsXP) { throw new PlatformNotSupportedException(); } var usernameBuffer = new StringBuilder(1000); var passwordBuffer = new StringBuilder(1000); bool persist = true; int result = NativeMethods.CredUICmdLinePromptForCredentials(target, IntPtr.Zero, 0, usernameBuffer, MaxUsernameLength, passwordBuffer, MaxPasswordLength, ref persist, flags); HandleResult(result); return(new NetworkCredential(usernameBuffer.ToString(), passwordBuffer.ToString())); }
public static NetworkCredential PromptCli([NotNull] string target, WindowsCredentialsFlags flags) { #region Sanity checks if (string.IsNullOrEmpty(target)) throw new ArgumentNullException(nameof(target)); #endregion if (!WindowsUtils.IsWindowsXP) throw new PlatformNotSupportedException(); var usernameBuffer = new StringBuilder(1000); var passwordBuffer = new StringBuilder(1000); bool persist = true; int result = NativeMethods.CredUICmdLinePromptForCredentials(target, IntPtr.Zero, 0, usernameBuffer, MaxUsernameLength, passwordBuffer, MaxPasswordLength, ref persist, flags); HandleResult(result); return new NetworkCredential(usernameBuffer.ToString(), passwordBuffer.ToString()); }
/// <inheritdoc/> protected override NetworkCredential Prompt(string target, WindowsCredentialsFlags flags) => WindowsCredentials.PromptDialog(target, flags);
protected abstract NetworkCredential Prompt(string target, WindowsCredentialsFlags flags);
public static extern int CredUICmdLinePromptForCredentials(string targetName, IntPtr reserved1, int iError, StringBuilder userName, int maxUserName, StringBuilder password, int maxPassword, [MarshalAs(UnmanagedType.Bool)] ref bool pfSave, WindowsCredentialsFlags flags);
public static extern int CredUICmdLinePromptForCredentials(string targetName, IntPtr reserved1, int iError, StringBuilder userName, int maxUserName, StringBuilder password, int maxPassword, [MarshalAs(UnmanagedType.Bool)] ref bool pfSave, WindowsCredentialsFlags flags);
protected abstract NetworkCredential Prompt(string target, WindowsCredentialsFlags flags);
/// <inheritdoc/> protected override NetworkCredential Prompt(string target, WindowsCredentialsFlags flags) { if (flags.HasFlag(WindowsCredentialsFlags.IncorrectPassword)) Log.Error(string.Format(Resources.InvalidCredentials, target)); return WindowsCredentials.PromptCli(target, flags); }
/// <inheritdoc/> protected override NetworkCredential Prompt(string target, WindowsCredentialsFlags flags) { return WindowsCredentials.PromptDialog(target, flags); }