屏蔽/隐藏 github 访问令牌
Posted
技术标签:
【中文标题】屏蔽/隐藏 github 访问令牌【英文标题】:Masking/hiding a github access token 【发布时间】:2018-01-18 02:00:09 【问题描述】:假设我有一个类似于 a94a8fe5ccb19ba61c4c0873d391e987982fbbd3
的 github 访问令牌。需要将此令牌放置在某些代码中,以便在辅助帐户需要时创建问题。我不希望人们知道我的访问令牌,因为那将是一个糟糕的主意.. 掩盖/隐藏我的访问令牌以将其放入代码中的最佳方法是什么,以及我将如何反转掩码/隐藏功能而不是显而易见的?
【问题讨论】:
【参考方案1】:您可以使用 Base64 编码对其进行编码:
>>> import base64
>>> access_token = "a94a8fe5ccb19ba61c4c0873d391e987982fbbd3"
>>> encoded_access_token = base64.b64encode(access_token)
>>> encoded_access_token
'YTk0YThmZTVjY2IxOWJhNjFjNGMwODczZDM5MWU5ODc5ODJmYmJkMw=='
这不一定是安全的,但我们可以确保它安全。我们可以继续编码access_token
n
次,并在结果字符串中隐藏数字n
。我选择了结局。
例如,设置n = 5
。
def encodeToken(access_token, n):
for i in range(n + 1):
access_token = base64.b64encode(access_token)
return access_token + str(n)
def decodeToken(encoded_token):
n = encoded_token[-1]
encoded_token = encoded_token[:-1]
for i in range(int(n) + 1):
encoded_token = base64.b64decode(encoded_token)
return encoded_token
>>> access_token = "a94a8fe5ccb19ba61c4c0873d391e987982fbbd3"
>>> encoded_access_token = encodeToken(access_token, 5)
>>> encoded_access_token
"Vm1wR1lWVXlUbkpOVldScFVteGFiMVZ1Y0VkaFJscHlWMjFHYWxadFVsWlZNblIzWWtaS1ZXSkdiRlpOYWtaMlZrUktSMk5zWkhWU2JGWm9UV3hLVUZkclVrSk9Wa3BYWVROd2FsSXdXbFJWYkZKQ1pVWmFSMWR0ZEZkaGVsWlhWREZXVjFkdFZuTlhiRVpXWVRGYU0xcEZXbXRYUlRGV1pFZG9UbEpGVmpaV1ZWcFNaREZDVWxCVU1EMD0=5"
>>> decoded_access_token = decodeToken(encoded_access_token)
>>> decoded_access_token
"a94a8fe5ccb19ba61c4c0873d391e987982fbbd3"
最安全的做法是定义自己的方法来编码访问令牌。
【讨论】:
好吧,您可以使用 base64 编码使其安全。让我举个例子。以上是关于屏蔽/隐藏 github 访问令牌的主要内容,如果未能解决你的问题,请参考以下文章
markdown [为github创建私人访问令牌] #github