mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 08:30:25 +08:00 
			
		
		
		
	Allow adding SSH keys even if SSH server is disabled (#24025)
This is useful in case you want to use them for signature verification. A notice is added to avoid confusion.
This commit is contained in:
		
				
					committed by
					
						
						GitHub
					
				
			
			
				
	
			
			
			
						parent
						
							d7552c27d3
						
					
				
				
					commit
					eb397c3e63
				
			@@ -16,7 +16,6 @@ import (
 | 
				
			|||||||
	"strconv"
 | 
						"strconv"
 | 
				
			||||||
	"strings"
 | 
						"strings"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	"code.gitea.io/gitea/models/db"
 | 
					 | 
				
			||||||
	"code.gitea.io/gitea/modules/log"
 | 
						"code.gitea.io/gitea/modules/log"
 | 
				
			||||||
	"code.gitea.io/gitea/modules/process"
 | 
						"code.gitea.io/gitea/modules/process"
 | 
				
			||||||
	"code.gitea.io/gitea/modules/setting"
 | 
						"code.gitea.io/gitea/modules/setting"
 | 
				
			||||||
@@ -158,10 +157,6 @@ func parseKeyString(content string) (string, error) {
 | 
				
			|||||||
// CheckPublicKeyString checks if the given public key string is recognized by SSH.
 | 
					// CheckPublicKeyString checks if the given public key string is recognized by SSH.
 | 
				
			||||||
// It returns the actual public key line on success.
 | 
					// It returns the actual public key line on success.
 | 
				
			||||||
func CheckPublicKeyString(content string) (_ string, err error) {
 | 
					func CheckPublicKeyString(content string) (_ string, err error) {
 | 
				
			||||||
	if setting.SSH.Disabled {
 | 
					 | 
				
			||||||
		return "", db.ErrSSHDisabled{}
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	content, err = parseKeyString(content)
 | 
						content, err = parseKeyString(content)
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return "", err
 | 
							return "", err
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -739,6 +739,7 @@ principal_state_desc = This principal has been used in the last 7 days
 | 
				
			|||||||
show_openid = Show on profile
 | 
					show_openid = Show on profile
 | 
				
			||||||
hide_openid = Hide from profile
 | 
					hide_openid = Hide from profile
 | 
				
			||||||
ssh_disabled = SSH Disabled
 | 
					ssh_disabled = SSH Disabled
 | 
				
			||||||
 | 
					ssh_signonly = SSH is currently disabled so these keys are only used for commit signature verification.
 | 
				
			||||||
ssh_externally_managed = This SSH key is externally managed for this user
 | 
					ssh_externally_managed = This SSH key is externally managed for this user
 | 
				
			||||||
manage_social = Manage Associated Social Accounts
 | 
					manage_social = Manage Associated Social Accounts
 | 
				
			||||||
social_desc = These social accounts are linked to your Gitea account. Make sure you recognize all of them as they can be used to sign in to your Gitea account.
 | 
					social_desc = These social accounts are linked to your Gitea account. Make sure you recognize all of them as they can be used to sign in to your Gitea account.
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,13 +1,9 @@
 | 
				
			|||||||
<h4 class="ui top attached header">
 | 
					<h4 class="ui top attached header">
 | 
				
			||||||
	{{.locale.Tr "settings.manage_ssh_keys"}}
 | 
						{{.locale.Tr "settings.manage_ssh_keys"}}
 | 
				
			||||||
	<div class="ui right">
 | 
						<div class="ui right">
 | 
				
			||||||
		{{if not .DisableSSH}}
 | 
							<button id="add-ssh-button" class="ui primary tiny show-panel button" data-panel="#add-ssh-key-panel">
 | 
				
			||||||
			<button id="add-ssh-button" class="ui primary tiny show-panel button" data-panel="#add-ssh-key-panel">
 | 
								{{.locale.Tr "settings.add_key"}}
 | 
				
			||||||
				{{.locale.Tr "settings.add_key"}}
 | 
							</button>
 | 
				
			||||||
			</button>
 | 
					 | 
				
			||||||
		{{else}}
 | 
					 | 
				
			||||||
			<button class="ui primary tiny button disabled">{{.locale.Tr "settings.ssh_disabled"}}</button>
 | 
					 | 
				
			||||||
		{{end}}
 | 
					 | 
				
			||||||
	</div>
 | 
						</div>
 | 
				
			||||||
</h4>
 | 
					</h4>
 | 
				
			||||||
<div class="ui attached segment">
 | 
					<div class="ui attached segment">
 | 
				
			||||||
@@ -35,6 +31,11 @@
 | 
				
			|||||||
		<div class="item">
 | 
							<div class="item">
 | 
				
			||||||
			{{.locale.Tr "settings.ssh_desc"}}
 | 
								{{.locale.Tr "settings.ssh_desc"}}
 | 
				
			||||||
		</div>
 | 
							</div>
 | 
				
			||||||
 | 
							{{if .DisableSSH}}
 | 
				
			||||||
 | 
								<div class="item">
 | 
				
			||||||
 | 
									{{.locale.Tr "settings.ssh_signonly"}}
 | 
				
			||||||
 | 
								</div>
 | 
				
			||||||
 | 
							{{end}}
 | 
				
			||||||
		{{range $index, $key := .Keys}}
 | 
							{{range $index, $key := .Keys}}
 | 
				
			||||||
			<div class="item">
 | 
								<div class="item">
 | 
				
			||||||
				<div class="right floated content">
 | 
									<div class="right floated content">
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user