GitHubにパスワード等をアップロードしない設定
はじめに
さて、GitHubがスタートアップや個人開発者に対して無料で利用できるサービスを提供するようになったことで、プログラミングの初心者や日曜大工的なアプローチを取る人々が履歴管理やリポジトリを作成し、コードを共有・管理することができるようになった。いまは、パブリックリポジトリは少ないのだけれど、そのうち公開するかもしれないので、機密情報をアップロードしない設定を忘れないように残しておこうと思う。
一時期、Raspberry Piに載せたセンサーが収集するデータをデータベースに収集し、そのデータをグラフ化してTwitterに毎朝8時にアップロードしてたりした。イーロン・マスクに買収されXになったりしてこの仕組みがうまく動かなくなったので、今は動かしていないがこのコードを書いたときに機密情報をアップロードしない仕組みにしていたので、参考にする。
パスワードを記述したファイルを無視する
無視するには.gitignoreにファイル名を記述する。この場合、jsonファイルに機密情報を記述しているので、.gitignoreに以下の様に記述した。また、不要な一時ファイルや生成した画像ファイルなども記入している。
tweeter_token.json
error.txt
img.png
.python-versionjsonファイルの内容
jsonファイルには次のように機密情報を記載した。
{
"Authentication_Tokens":{
"access_token": "XXXXXXXXX",
"access_token_secret": "XXXXXXXXX",
"bearer_token": "XXXXXXXXX"
},
"Consumer_Keys":{
"api_key": "XXXXXXXX",
"api_key_secret": "XXXXXXXX"
},
"Database":{
"User": "XXXXXX",
"password": "XXXXXX",
"Address": "XXXXXX",
"Table": "XXXXXX"
}
}jsonファイルから必用な情報の取得
実際にファイルから必用な情報を入手
import tweepy
import json
json_file = open('/home/kimio/Documents/Tweet/tweeter_token.json', 'r')
access_db = json.load(json_file)
#Authentication Tokens
AT = access_token = access_db["Authentication_Tokens"]["access_token"]
ATS = access_token_secret = access_db["Authentication_Tokens"]["access_token_secret"]
bearer_token = access_db["Authentication_Tokens"]["bearer_token"]
#Consumer Keys
CK = api_key = access_db["Consumer_Keys"]["api_key"]
CKS = api_key_secret = access_db["Consumer_Keys"]["api_key_secret"]
# mariadbへのアクセス用
db_id = access_db["Database"]["User"]
db_pass = access_db["Database"]["password"]
db_addr = access_db["Database"]["Address"]
db_tbl = access_db["Database"]["table"]
# Twitterへのアクセス
auth = tweepy.OAuthHandler(CK, CKS)
auth.set_access_token(AT, ATS)
api = tweepy.API(auth)これで、うまく動いていたんだけどね。今はお金払わないとできないのかな?


