{"action":"opened","issue":{"url":"https://api.github.com/repos/greenelab/continuous_analysis/issues/7","repository_url":"https://api.github.com/repos/greenelab/continuous_analysis","labels_url":"https://api.github.com/repos/greenelab/continuous_analysis/issues/7/labels{/name}","comments_url":"https://api.github.com/repos/greenelab/continuous_analysis/issues/7/comments","events_url":"https://api.github.com/repos/greenelab/continuous_analysis/issues/7/events","html_url":"https://github.com/greenelab/continuous_analysis/issues/7","id":197019099,"number":7,"title":"Use GitHub deploy keys rather than personal access tokens","user":{"login":"dhimmel","id":1117703,"avatar_url":"https://avatars.githubusercontent.com/u/1117703?v=3","gravatar_id":"","url":"https://api.github.com/users/dhimmel","html_url":"https://github.com/dhimmel","followers_url":"https://api.github.com/users/dhimmel/followers","following_url":"https://api.github.com/users/dhimmel/following{/other_user}","gists_url":"https://api.github.com/users/dhimmel/gists{/gist_id}","starred_url":"https://api.github.com/users/dhimmel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dhimmel/subscriptions","organizations_url":"https://api.github.com/users/dhimmel/orgs","repos_url":"https://api.github.com/users/dhimmel/repos","events_url":"https://api.github.com/users/dhimmel/events{/privacy}","received_events_url":"https://api.github.com/users/dhimmel/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2016-12-21T19:56:07Z","updated_at":"2016-12-21T19:56:07Z","closed_at":null,"body":"Currently, it looks like `$git_publish_key` is a GitHub [personal access token](https://github.com/blog/1509-personal-api-tokens). This gives the CI service full access to a user's account. For improved security, it would be ideal to limit the CI service's write access to the specific repository being continuously analyzed.\r\n\r\nDeploy keys [offer this functionality](https://developer.github.com/guides/managing-deploy-keys/#deploy-keys):\r\n\r\n> A deploy key is an SSH key that is stored on your server and grants access to a single GitHub repository. This key is attached directly to the repository instead of to a personal user account.\r\n\r\nAs an example, see https://github.com/dhimmel/thinklytics/commit/39e2ae0eb8a277dca05c8a8523b030c2c20d26af, where I switched from a personal access token to a deploy key."}}
{"actor":{"display_login":"dhimmel"}}