Differences
This shows you the differences between the selected revisions of the page.
security_credentials 2012-09-30 | security_credentials 2023-10-06 (current) | ||
Line 1: | Line 1: | ||
====== Security of Credentials ====== | ====== Security of Credentials ====== | ||
- | To maintain the highest level of security your should not record your secret credentials (such as password or private key passphrase) anywhere. | + | To maintain the highest level of security you should not record your secret credentials (such as password or private key passphrase) anywhere. |
Though there may be situations, in which decreased level of security is acceptable in exchange for increased comfort of use. For these situations, WinSCP offer some convenience features. They are listed here in loosely decreasing order of security. | Though there may be situations, in which decreased level of security is acceptable in exchange for increased comfort of use. For these situations, WinSCP offer some convenience features. They are listed here in loosely decreasing order of security. | ||
Line 7: | Line 7: | ||
If you are using public key authentication, you can use [[ui_pageant|Pageant authentication agent]] to avoid entering your passphrase for every connection. | If you are using public key authentication, you can use [[ui_pageant|Pageant authentication agent]] to avoid entering your passphrase for every connection. | ||
- | gerard193.pkk===== Master Password ===== | + | ===== Master Password ===== |
- | If you want to store your password in [[session_configuration#stored|stored session]] to avoid entering them for every connection, it is recommended to protect them with [[master_password|master password]]. | + | If you want to store your password in [[session_configuration#site|site]] to avoid entering them for every connection, it is recommended to protect them with [[master_password|master password]]. |
===== [[password_memory]] Keeping Password in Memory ===== | ===== [[password_memory]] Keeping Password in Memory ===== | ||
- | By default, when you [[ui_authenticate#password|enter your password on authentication window]], it is used only for that single authentication. When WinSCP needs to authenticate again, such as when reconnecting, opening additional connection for [[transfer_queue|background transfer]] or opening [[shell_session|separate shell session]], you are prompted for your password again. | + | By default, when you [[ui_authenticate#password|enter your password on the authentication window]], it is stored in the memory and reused for all subsequent authentications during the same session, such as when reconnecting, opening an additional connection for a [[transfer_queue|background transfer]], opening a [[shell_session|separate shell session]] or [[integration_putty#open_putty|opening a session in PuTTY]]. |
- | To keep the password in memory to allow its reuse, enable preference option //[[ui_pref_background#background_transfers|Remember password of main session for background transfers]]// (despite its wording it enables password reuse for all other scenarios listed above). ((Note that the //[[ui_pref_integration_app|Remember session password and pass it to PuTTY]]// preference option has the same effect, so you have to disable both, to avoid automatic authentication of additional connections.)) | + | You can choose not to keep the password in the memory, for an increased protection, by turning off both //[[ui_pref_security|Remember password for duration of session]]// and //[[ui_pref_integration_app|Remember session password and pass it to PuTTY]]// preference options. |
- | The same effect (just per-session, not global) has entering your password already to a //[[ui_login_session#session_group|Password]]// box on the Login dialog. For [[session_configuration#stored|stored session]] you can achieve that by using //Edit// button on the [[ui_login_stored_sessions|Stored Sessions tab]] of Login dialog. | + | When you choose not to remember the password by default, you can still choose to remember it for a specific session on the [[ui_authenticate#password|password prompt]]. The same effect has entering your password already to the //[[ui_login#session_settings|Password]]// box on the Login dialog.· |
- | ===== Passing Password to PuTTY ===== | + | If you have your [[security_credentials#storing_password|password stored in a site]], it is always automatically used for all authentications during a session. |
- | Enable preference option //[[ui_pref_integration_app|Remember session password and pass it to PuTTY]]// to make WinSCP keep password in memory and pass it to PuTTY, when [[integration_app#open_putty|opening a session in PuTTY]]. | + | |
- | Note that the password is passed to PuTTY using command-line parameter ''-pw''. It is rather easy for other processes (possibly malicious) on your computer to retrieve command-line used to start PuTTY, hence to discover your password. So you should avoid using this option, unless you are confident about security of your computer. Preferred alternative approach is to use [[public_key|public key]] authentication together with [[ui_pageant|Pageant]] (PuTTY can use Pageant too). | + | Keeping the password in the memory can be dangerous, in case a malware gains access to the WinSCP process or the memory is swapped out to disk or written into a crash dump file. However, it is still unavoidably very dangerous, if malicious software is in a position to read the memory of your WinSCP processes: there is still a lot of sensitive data in there which cannot be wiped because it's still being used, e.g. session keys. Also [[ui_pageant|Pageant]] retains decrypted private keys in memory for long periods on purpose if you use it. So turning off the option to remember the password somewhat mitigates the risks of malicious access to your WinSCP processes' memory, but it cannot eliminate those risks completely. ((&puttydoccite)) |
===== [[storing_password]] Storing Password ===== | ===== [[storing_password]] Storing Password ===== | ||
- | The least recommended method of handling passwords conveniently is to store them unprotected with your [[session_configuration#stored|stored sessions]]. | + | The least recommended method of handling passwords conveniently is to store them unprotected with your [[session_configuration#site|site]]. |
Saved passwords (unless protected by [[master_password|master password]]) are stored in a manner that they can easily be recovered. It is not possible to securely encrypt passwords in a way that still allows for automatic use. Do not use the save password feature if you are not absolutely sure of the physical and electronic security of the system on which you are storing passwords. | Saved passwords (unless protected by [[master_password|master password]]) are stored in a manner that they can easily be recovered. It is not possible to securely encrypt passwords in a way that still allows for automatic use. Do not use the save password feature if you are not absolutely sure of the physical and electronic security of the system on which you are storing passwords. | ||
Line 30: | Line 29: | ||
System administrators can [[administration|restrict password storing]] altogether. | System administrators can [[administration|restrict password storing]] altogether. | ||
+ | |||
+ | ===== Protecting Credentials Used for Automation ===== | ||
+ | Learn how to [[guide_protecting_credentials_for_automation|protect credentials used for automation]]. | ||
+ | |||