From bdcb8d6d8c858e71f21a274654a41d6d5ab799fc Mon Sep 17 00:00:00 2001 From: Anthony O. <netangel+github@gmail.com> Date: Fri, 08 Aug 2014 04:47:05 -0400 Subject: [PATCH] Update setup_authentication.mkd --- src/main/java/com/gitblit/transport/ssh/git/Receive.java | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/gitblit/transport/ssh/git/Receive.java b/src/main/java/com/gitblit/transport/ssh/git/Receive.java index 94d0998..3e7469f 100644 --- a/src/main/java/com/gitblit/transport/ssh/git/Receive.java +++ b/src/main/java/com/gitblit/transport/ssh/git/Receive.java @@ -1,4 +1,5 @@ /* + * Copyright (C) 2009 The Android Open Source Project * Copyright 2014 gitblit.com. * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -17,12 +18,17 @@ import org.eclipse.jgit.transport.ReceivePack; +import com.gitblit.transport.ssh.SshKey; import com.gitblit.transport.ssh.commands.CommandMetaData; @CommandMetaData(name = "git-receive-pack", description = "Receives pushes from a client", hidden = true) public class Receive extends BaseGitCommand { @Override protected void runImpl() throws Failure { + SshKey key = getContext().getClient().getKey(); + if (key != null && !key.canPush()) { + throw new Failure(1, "Sorry, your SSH public key is not allowed to push changes!"); + } try { ReceivePack rp = receivePackFactory.create(getContext().getClient(), repo); rp.receive(in, out, null); -- Gitblit v1.9.1