직원에게 '직장'GitHub 계정을 만들도록 요청하는 것이 좋습니까?


91

모든 회사 Git 리포지토리를 GitHub로 이전했으며 이제 직원을 프로젝트에 추가하려고합니다. 대부분의 직원이 이미 개인 GitHub의 계정을 가지고 있기 때문에, 나는 내가 작성하도록 요청해야하는지 궁금하네요 작업 GitHub의 계정을. 이 작업을 수행하려는 이유는 사이트에서 개인 활동을 통해 개인 계정을 잘 공개하여 표적 공격의 가능성을 높이기 때문에 코드베이스에 대한 무단 액세스 가능성을 줄이는 것입니다. 또한 개인 계정이 손상된 경우 회사 코드 전체가 납치범에게 접근 할 수있는 것은 아닙니다. 이것이 직원들에게 두 가지 계정을 유지하는 부담을 가져다 줄 것이기 때문에 이것이 올바른 접근법인지, 심지어 합리적인지 궁금합니다.

업데이트 모든 유용한 통찰력 주셔서 감사합니다. 질문 / 답변의 주관적 특성으로 인해 여러 가지 답변 중에서 가장 좋은 점을 취 했으므로 답변을 수락 된 것으로 설정하지 않습니다.

나는 이런 식으로 진행하기로 결정했다 : 나는 직원들에게 실무적인 이유로 GitHub 전자 메일 알림을 업무용 전자 메일 계정으로 보내야한다는 것을 상기시킬 것이다. 따라서 작업 GitHub 계정을 만드는 것이 더 합리적입니다. 그들이 개인 GitHub 계정을 기꺼이 사용하고 업무용 이메일 계정에 연결한다면 괜찮습니다. 어쨌든직원은 GitHub 사용과 관련된 여러 조건에 대해 서면으로 동의해야합니다. 계정 보안과 관련이 있습니다. 다른 계정과 함께 사용하지 않는 보안 임의 암호 생성기를 사용하여 보안 암호를 선택하고, 소유하거나 관리하지 않는 컴퓨터를 통해 GitHub에 액세스하지 않는 등 직원은 하루 종일해야합니다. 업무용 계정이 더 적합한 지 여부를 스스로 결정합니다.


업무용 계정은 똑같이 타협하기 쉽지 않습니까?
Boris Yankov

10
GitHub는 2012 년 8 월에 조직 별 이메일 라우팅을 추가했습니다. github.com/blog/1204-notifications-stars
Paul Schreiber

2
@BorisYankov 공개 활동이없고 로그인이 사용자 이름과 관련이없는 경우 회사 계정이 손상되기가 더 어려울 수 있습니다. 모호한 보안이지만 확실하게 도움이됩니다. github에서 보낸 모든 전자 메일은 개발 팀장에게도 전송되는 워크 플로를 만들 수 있습니다. 또 다른 요점 : 업무 계정으로 실사, 감사 계정을 결정하고 심지어 합의 된 내용을 준수하는지 확인할 수 있습니다. 회사와 직원 사이. 세 번째 중요한 점 : 사용자가 작업을 종료하자마자 그의 계정을 인계 할 수 있습니다.
VP.

7
개인이 둘 이상의 계정을 유지 관리하는 것은 GitHub 서비스 약관에 위배됩니다. "한 개인 또는 법인은 둘 이상의 무료 계정을 유지할 수 없습니다." help.github.com/articles/github-terms-of-service
라일리 메이저

2
이 마지막 코멘트에 대해. 약관을 확인했습니다. A.7. 개인 계정이 있고 회사에서 귀하를 대신하여 다른 계정을 만들어 사용하면 어떻게됩니까? 잘못하지 않아도 개인 계정이 해지됩니까?
Matteo Mosca

답변:


63

이점이 있다면 고통 스러울뿐입니다. 그러나 고통스럽고 무의미한 것보다 더 나쁜 것은 없습니다. 개인 계정 하나만 있으면됩니다. 두 가지 이유 :

  • Github은 조직에서 매우 훌륭한 액세스 제어 기능을 제공합니다. 직원이 떠나면 즉시 액세스 권한을 제거 할 수 있습니다. 회사 계정이있는 경우 명시된 혜택을 받으려면 어떻게 든 계정을 되 찾아야합니다. 실제로는 개인 계정이있는 것처럼 계정 액세스 권한 만 제거하면됩니다.

  • 하나 이상의 계정을 갖는 것은 고통 스럽습니다. 계정간에 로그인 및 로그 아웃하면 다른 계정을 사용할 때 설명, 팔로 잉 및 모든 소셜 기능을 추가하는 데 어려움이 있습니다.

참고 자료 : GitHub 통합 기능이 있는 CI 서버를 만들 므로 많은 테스트 계정이 있으며 별도의 작업 계정과 개인 계정을 포함하여 모든 종류의 이상한 구성을 가진 고객과 이야기했습니다. 항상 문제가됩니다.


25

귀사의 코드는 공용 또는 개인 저장소에 있습니까? 그들이 (또는 적어도 일부) 공개되어 있고 직원들이 자신의 GitHub 계정을 사용하도록 허용했다면, 좋은 코드를 작성하는 것이 동기가 될 것입니다. 그들의 이름은 말 그대로 공개적으로 붙일 것 입니다. 그러나 모든 리포지토리가 비공개라고 가정합니다.

전반적으로 직원의 계정이 GitHub 전체에 공개되지 않는 것을 선호하는 것 같습니다. 불행히도 그들은 GitHub Enterprise 를 판매하여 돈을 벌기 때문에 이것이 조직의 개인 계정을 만들 수없는 이유라고 생각합니다. 어느 경우 에든, (필수적으로) 잠겨진 업무용 계정을 보유 하는 것은 리포지토리를 호스팅 할 매우 소셜 사이트를 선택한 후 실제로 는 직관적이지 않습니다.

직원의 업무용 계정을 설정했다고 가정 해 봅시다. 계정 사용 방법에 대한 제한을 적용 하시겠습니까? 업무용으로 비 작업 프로젝트에 코드를 제공하도록 허용 하시겠습니까? 그렇다면 계정이 공개적으로 표시되어 처음 우려로 돌아갑니다. 당신은 그들이 그들의 개인 계정으로 기부를하도록 허용 할 수 있지만, 당신은 그들을 위해 물류 문제를 만들고 있습니다. 개인적으로 저는 직원들이 다른 프로젝트 자체에 코드를 제공하도록 장려하고 싶습니다. 이를 통해 신뢰를 높일 수있을뿐만 아니라 소중한 경험을 쌓고 신뢰를 쌓을 수 있습니다.

어쨌든, 나는 업무 계정을 갖는 노력의 가치가 있다고 생각하지 않습니다. GitHub 인터페이스를 사용하면 누가 무엇에 액세스 할 수 있는지 쉽게 제어 할 수 있으므로 액세스를 제거하는 방법이 간단합니다. 또한 별도의 계정을 갖는 것이 GitHub 인터페이스가 이미하는 것보다 더 이상 개인 프로젝트와 작업 프로젝트 사이에 "선을 그립니다"라고 생각하지 않습니다.

또한 회사가 성장함에 따라이를 어떻게 처리 할 것인지를 염두에 두십시오. 현재 설정 한 정책을 관리 관점에서 확장 할 수 있습니까? 지금 5 개의 계정을 관리하는 것이 좋지만 20 또는 50으로 성장하면 어떻게됩니까? 그러나 일단 그 시점에 도달하면 GitHub Enterprise가 접근하기 쉬운 솔루션 일 것입니다. 이 경우 GitHub 계정을 GitHub Enterprise 설치로 마이그레이션 할 수 있는지 파악하는 것이 좋습니다. 그렇다면 업무 계정을 보유해야하는 긍정적 인 이유가 하나 있습니다.


좋은 지적입니다. 감사합니다. 예, 리포지토리는 비공개입니다. 직장에서 일하지 않는 프로젝트를 수행하는 것에 대해서는 전혀 걱정하지 않습니다. 계정 보안 일뿐입니다.
fiorenti

관련이없는 특정 의견을 편집했습니다.
Jeremy Heiler 2018 년

19

의문의 여지가 없으며 실제로 꽤 좋은 생각입니다.

유감스럽게도 회사 생활의 어느 시점에서 직원을 떠나 조직을 계획해야합니다. 그 시점에서 회사의 저장소에서 개인 계정을 어떻게 구출합니까?

직원이 나쁜 조건으로 떠날 경우 어떻게 하시겠습니까? 이상적인 세상에서는 모든 것이 전문적으로 유지 될 것이며 회사와 전직 직원 사이에 아무런 적개심이 없을 것입니다. 바람직하지 않은 상황을 계획하는 것이 현명 할 것입니다.

두 계정을 유지하는 것은 쉽지 않지만 직원들은 기회를 환영해야합니다. 그것은 그들의 것과 회사의 것 사이에보다 명확한 노선을 제공합니다.

편집 : 여기서 걱정하는 것은 직원의 프로젝트 X, Y, Z 등에 대한 개인적인 기여와 회사의 제품에 대한 유료 작업을 명확하게 분리하는 것입니다. 별도의 업무용 계정을 사용하면 지적 재산 및 관련 저작권을 소유 한 사람을 식별하는 데 필요한 설명이 제공됩니다.

예를 들어 직원이 개인 계정을 사용하고 회사와 프로젝트 X에 모두 기여하는 경우 해당 시점에서 직원의 역할을 어떻게 식별합니까? 귀사 또는 자신의 재량에 따라 X에 기여한 적이 있습니까? 직원이나 회사가 X에 제공된 저작물에 대한 저작권을 보유하고 있습니까? 그 문제에 대해 회사 업무에 대한 외부 기여를 허용하는 경우 직원이 직원인지 자발적인 기여인지 어떻게 구별합니까?

더 넓은 의미에서, 다른 프로젝트에 기여함으로써 회사를 대표하여 명성을 쌓는 직원이 있다고 가정 해보십시오. 직원이 퇴사 할 때 개인 사용자 계정이 더 이상 회사와 연결되어 있지 않다는 것을 어떻게 알 수 있습니까? 특정 계정에 대한 명확한 설명없이 심각한 브랜드 문제가 발생할 수 있습니다.

잠재적 인 시나리오를 생각할 때 토끼의 소유권, 브랜드 및 저작권 문제를 쉽게 파악할 수 있습니다. 별도의 업무용 계정을 사용하면 이러한 모호성을 제거하는 데 도움이됩니다. 회사는 그 이름으로 공헌 한 것에 대한 주장을 할 수 있어야합니다.

사용자 계정을 분리하는 기술적 인 측면에 관한 것이 아니라 문제를 일으킬 수있는 법적 질문입니다.

회사의 제품이 모두 허가 된 라이센스에 따라 오픈 소스로 출시되거나 잠재적 인 브랜딩 문제에 대해 전혀 걱정하지 않는 경우이 점이 문제가 될 수 있습니다.
(이 편집을 요청한 Paul Biggar의 팁


감사합니다. 언급 된 이유로 직원 인 경우이 정책을 환영합니다. GitHub의 인터페이스를 사용하면 개인 리포지토리에서 사용자의 액세스를 쉽게 제거 할 수 있습니다. 또한 직원이 매우 나쁜 조건으로 떠나면 대부분의 경우 원하는 경우 피해를 입을 시간이 충분하다고 가정합니다.
fiorenti

23
이 답변을 이해하지 못합니다. GitHub에는 세분화 된 액세스 제어 기능이 있습니다. 직원이 퇴사하면 조직에서 직원의 액세스 권한을 제거합니다. 이게 어려워요? 실제로 업무용 계정을 "다시 찾는 것"보다 개인 계정을 제거하는 것이 더 쉽습니다.
Paul Biggar 2016 년

2
@fiorenti : 아마도 사용자는 코드의 전체 체크 아웃을 할 것입니다. 이것은 코드가 호스팅되는 위치에 관계없이 발생합니다!
Paul Biggar 2016 년

2
@PaulBiggar-관련된 광범위한 문제를 포착하기 위해 응답을 업데이트했습니다. 주로 별도의 계정을 추천하도록하는 법적 기여 문제입니다. 나는 개인과 직장을 분리하지 않으면 여파로 심각한 두통을 일으킨 여러 사례를 보았습니다. 모든 사람의 MMV 및 각 상황은 회사의 정신에 따라 검사해야합니다.

발생할 수있는 잠재적 인 법적 문제 지뢰밭을 지적 해 주셔서 감사합니다
RidiculousRichard

10

모두가 고용주가 두 가지를 분리 할 필요가 없다는 데 동의하는 것처럼 보이기 때문에 여기에 저의 짧은 경험이 전문적인 프로젝트에 대한 개인 계정을 사용하고 작업 환경에서 이루어진 오픈 소스 기여를 시도했습니다.

맥락을 완성시키기 위해 : 계정에 관한 질문은 없었습니다. 실제로 GitHub는 직장 내 대부분의 사람들에게 알려지지 않았습니다. 나는 단지 내가 작업 할 프로젝트를 오픈 소스로 만들 수있는 초록불을 얻을 수 있었고, 최소한의 작업, 즉 내 개인 계정을 사용했습니다.

직원의 관점에서, 내가 정말로 싫어하는 한 가지는 : 업무용 이메일에 대한 개인 이메일 알림을받는 것입니다.

그 관찰 결과, 나는 그것이 전문적인 / 개인적 장벽을 훼손한다는 것을 깨달았습니다. 만약 내가 쉬는 시간에 프로젝트에 기여하고 싶다면, 여전히 내 작업 프로젝트에서 모든 업데이트를 얻습니다… 그리고 그것은 외부 기고자들에게 혼란을 가져올 수 있습니다 님이 귀하의 프로젝트를 벗어났다 사실을 모르고 연락을 드릴 수 있습니다 .

물론 개인의 명성이 업무 기여를 통해 얻을 수 있다는 사실과 균형을 이룰 수 있습니다. 그러나 다시 말하지만, 당신의 이름이 가난한 프로젝트와 관련이 있다면 반대가 될 수 있습니다…

결국, 고용주 의 관점 에서 질문이 제기 되고 다른 모든 답변을 고려할 때 : 나는 업무 전용 계정 을 사용하는 데 별다른 의미가 없다고 말할 것입니다 . 그러나 개인 장벽을 높이고 자하는 직원이 그렇게 할 수 있고 그러한 위험에 대해 암시 할 수 있도록 금지해서는 안됩니다.


참고로, 보안에 관한 다른 답변에는 쉬운 해고가있는 것 같습니다.

물론,“회사”계정은 암호에 관한“개인”계정보다 안전하지 않습니다. 그러나 GitHub를 사용하는 경우 SSH 키로 푸시 할 수 있습니다. 그리고 그 키는 대개 자신의 세션에 있습니다 ... 따라서 개인 계정은 간단한 개인용 컴퓨터 도용 (비밀번호 지식없이)으로 모든 작업 저장소를 손상시킬 수있는 반면, 전용 작업 계정은 아마도 키가 작업 기계에만있을 수 있습니다. 더 육체적으로 안전합니다.


+1 : 내가 생각하지 못한 두 가지 : 이메일과 SSH 키. GitHub에서 별도의 이메일을받는 것이 문제이지만 계정에 여러 SSH 키를 설정할 수 있습니다.
Jeremy Heiler 2016 년

무엇 당신이에 의해 정확히 뜻 @JeremyHeiler "GitHub의에 별도의 이메일을 가지는 것은 문제가?" . 나는 : 당신이 당신의 프로필에 추가 한 후 GitHub의이 문제없이 귀하의 계정과 그들을 일치, 세 가지 다른 이메일 (이전, 현재 개인 하나, 일 하나)를 사용하고
MattiSG

나는 이 요점 을 언급하고 있었다 . 업무용 전자 메일을 업무용 컴퓨터의 git.config에 넣고 계정에 추가하면 업무 관련 알림이 업무용 전자 메일로 전송된다고 말씀하십니까? 그렇다면 훌륭합니다!
Jeremy Heiler 2016 년

@JeremyHeiler 오, 아니, 우리는 이메일의“문제”가 무엇인지에 대해 약간의 오해를했다. 그러나 각 커밋 주소마다 계정이 필요한 것처럼 "문제"는 아닙니다. 원하는만큼 이메일을 계정에 연결할 수 있지만 하나의 이메일 만 계정에서 알림을받습니다.
MattiSG

죄송합니다, 예, 처음에 좀 더 구체적으로 말해야했을 것입니다 :
-P

9

"아니오"로 투표했습니다. 개발자에게는 많은 번거 로움이 있으며 모호함을 통해 보안을 제공합니다. 누군가가 개발자를 적극적으로 타겟팅하는 경우 다른 사람이 코드를 얻을 수있는 다른 공격 경로가 많이 있습니다.

게다가, 당신이 게임에 마법의 비밀 소스 유형 알고리즘을 많이 가지고 있지 않은 한 신생 기업은 코드를 얻는 사람이 당혹스럽고 끔찍하고 독창적이지만 중요한 경쟁 우위를 가져서는 안됩니다. 코드?) 또는 비즈니스를 중단하게합니다.

낮은 주문 확률 대 개발자 생산성? 나는 개발자 생산성을 가져다 줄 것이지만 그것은 나의 미적분학입니다. :)


2

나는 그것이 직원들에게 남겨진 선택이어야한다고 말하고 싶습니다. 내가 말하고 싶은 한 가지는 원하지 않는 경우 개인 github 계정을 사용하도록 강요하지 않는 것입니다. 나는 GitHub를 사용하는 회사에 있었고 요구 사항은 아니지만 개인적으로 별도의 계정을 만들고 싶었습니다. 주된 이유는 내 개인 프로젝트를 보호하는 것이 었습니다. 나는 회사가 내 개인 프로젝트 중 하나가 회사 프로젝트에 사용 된 것과 동일한 github 계정에 있었기 때문에 자신의 프로젝트라고 말하고 싶지 않았습니다. 법률 시스템에서 이와 같은 일이 발생할 때). 나는 그 깨끗한 분리가 좋은 것이 될 수 있다고 생각합니다.


2

우리 회사에서하고 있습니다. "모든 사람이 루트 액세스 권한을 가지고 있고 백업이 작동하는지 확실하지 않은 등 테이블 아래의 더 안전한 github 또는 서버"에 대한 토론을 시작하고 싶지 않습니다. 우리의 접근 방식은 다음과 같습니다.

  • 모든 개발자는 자신의 개인 github 계정과 관련이없는 새 계정을 만들어야합니다
  • 회사 이메일을 사용해야합니다.
  • 보안 규칙 (로그인 이름 및 비밀번호 요구 사항)을 준수해야합니다.
  • 공개 활동을 보여 주거나 가질 수 없습니다.
  • 회사 재산입니다. 자신의 계정이 아닙니다.
  • 모든 계정은 회사와 임의의 이름으로 연결됩니다. 공공 활동도 없습니다.

2
GitHub 비밀번호의 유효성을 검사 할 방법이 없으므로 비밀번호 복잡성 요구 사항을 적용 할 수 없으므로 그 이유는 무엇입니까?
Ramhound

글쎄 , 당신이 기술적으로 무언가를 시행 할 수 없다면 , 당신은 그것을 집행 하지 않는다고 말하고 있습니다. 직원이 보안 정책을 읽고 서명 한 경우 그 결과를 알고 있으면 강제라고 말하고 있습니다.
VP.

3
직원이 GitHub 계정의 비밀번호를 생성했는지 확인할 방법이 없기 때문에 어떤 일이 수행되고 있지 않다는 것을 알 수있는 방법이 없습니다.
Ramhound

예를 들어, 계정이 손상된 경우 암호가 abc123이라는 것을 발견하면 직원을 "책임"할 수 있습니다. 여기서 문제가 보이지 않습니다. 또 다른 요점 : 내가 그것을 집행한다고 쓰여진 곳은 어디입니까? 반드시 작성해야합니다 (지금 업데이트해야 함) ...
VP.

이 방법은 있어야 계약으로 단련 이 이름은 그들의 또한 그리고 당신은 이름에 어떤 조치도 취하지 않습니다 .
Michael

0

이 Q & A가 몇 년 전인 것으로 알고 있으므로 이전에는 사용할 수 없었지만 구체적으로 다음 과 같은 사용자 계정과 조직 계정의 차이점을 언급합니다.

개인용 및 업무용과 같이 둘 이상의 사용자 계정을 갖고 싶은 유혹이있을 수 있지만 하나의 계정 만 있으면됩니다.

GitHub는 리포지토리별로 알림을 켜거나 끄는 좋은 도구를 만들었으므로 개인 / 작업을 결합하는 것이 가장 적합한 것처럼 보입니다.


그 공세는 어땠나요? 나는 이것이 좋은 대답이라고 생각합니다.
John McGehee

-2

사람들은 아직 클라우드 기반 소스 서버를 신뢰하지 않습니다. Github은 많은 신생 웹 회사와 계약을 맺었지만 실제로는 대부분의 사람들이 소스 코드를 유지하기위한 자체 서버를 가지고 있습니다. 내 경험상 대부분의 경우 Clear-case 또는 SVN을 사용합니다. Git은 아직 엔터프라이즈 환경에 적용되지 않습니다. 회사 메일 서버조차 회사의 구내 외부에서는 실제로 높이 평가되지 않습니다.


1
나는 현재 서비스 회사에서 일하고, Git과 함께 훈련했으며, 대기업 과 같은 대부분의 고객 은 ClearCase에서 마이그레이션하거나 다음 프로젝트에서 그렇게 준비하고 있습니다…
MattiSG
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.