Skip to content

Instantly share code, notes, and snippets.

@paulczar
Created December 12, 2016 17:44
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save paulczar/8f3516bc0c48d18d757653d9a2716857 to your computer and use it in GitHub Desktop.
Save paulczar/8f3516bc0c48d18d757653d9a2716857 to your computer and use it in GitHub Desktop.
SSH authorized via GHE pub keys
#!/usr/bin/python
# set "AuthorizedKeysCommand /usr/local/bin/ghe-authorized-keys" in /etc/ssh/sshd_config
import sys
import requests
from requests.auth import HTTPDigestAuth
import json
if len(sys.argv) == 2:
ssh_user = sys.argv[1]
user_url = "https://github.your-org-here.com/api/v3/users/%s" % ssh_user
key_url = "%s/keys" % user_url
api_user = 'XXXXX'
api_key = 'XXXXXX'
user_info = requests.get(user_url,auth=(api_user, api_key))
if(user_info.ok):
user = json.loads(user_info.content)
if not user['suspended_at']:
myResponse = requests.get(key_url,auth=(api_user, api_key))
if(myResponse.ok):
keys = json.loads(myResponse.content)
for key in keys:
print key['key']
else:
print "user %s is disabled" % ssh_user
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment