仅通过配置文件进行身份验证?
Authentication only via config file?
我正在研究 python shade 模块,以便使用我们的 OpenStack 安装自动执行一些任务。
这个page指示:
Create a configuration file to store your user name, password, project_name in ~/.config/openstack/clouds.yml.
我仔细看了看;但我找不到任何关于如何以 不同 方式提供凭据的信息;例如,作为我可以在 python 代码中创建的某些对象的参数。
长话短说:这可能吗?或者这个要求会立即迫使我"off shade";并使用 OpenStack python sdk 代替?
我不是 python 专家,但经过一番搜索 "other" openclient 模块是如何做到的;也许以下可以工作(您的 link 中的示例代码;只是一点增强):
from shade import *
auth_data = {
# URL to the Keystone API endpoint.
'auth_url': 'url',
# User credentials.
'user_domain_name': ...
}
稍后执行此操作:
cloud = openstack_cloud(cloud='your-cloud', **auth_data)
据我了解,这会将任何密钥、密码或安全敏感文件放入我们与 Travis.yml 一起使用的 yml 文件中,并保留在本地目录中并添加到 git忽略。
据说这是使用 python 和 twitter api 功能,我很确定它使用或引用了一个名为 tweepy 的程序。
这对我们很有帮助,听起来对您来说可能很接近。
如果有帮助请告诉我。
with open("secrets.yml") as f:
content = f.read()
# from secrets.yml import CONSUMER_KEY, CONSUMER_SECRET, ACCESS_TOKEN, ACCESS_SECRET
secret = yaml.load(content)
##################################################################################################
# authorize tweepy with CONSUMER_KEY and CONSUMER_SECRET
auth = tweepy.OAuthHandler(secret["CONSUMER_KEY"], secret["CONSUMER_SECRET"])
auth.secure = True
# read in ACCESS_TOKEN and ACCESS_SECRET variables to tweepy
auth.set_access_token(secret["ACCESS_TOKEN"], secret["ACCESS_SECRET"])
我正在研究 python shade 模块,以便使用我们的 OpenStack 安装自动执行一些任务。
这个page指示:
Create a configuration file to store your user name, password, project_name in ~/.config/openstack/clouds.yml.
我仔细看了看;但我找不到任何关于如何以 不同 方式提供凭据的信息;例如,作为我可以在 python 代码中创建的某些对象的参数。
长话短说:这可能吗?或者这个要求会立即迫使我"off shade";并使用 OpenStack python sdk 代替?
我不是 python 专家,但经过一番搜索 "other" openclient 模块是如何做到的;也许以下可以工作(您的 link 中的示例代码;只是一点增强):
from shade import *
auth_data = {
# URL to the Keystone API endpoint.
'auth_url': 'url',
# User credentials.
'user_domain_name': ...
}
稍后执行此操作:
cloud = openstack_cloud(cloud='your-cloud', **auth_data)
据我了解,这会将任何密钥、密码或安全敏感文件放入我们与 Travis.yml 一起使用的 yml 文件中,并保留在本地目录中并添加到 git忽略。
据说这是使用 python 和 twitter api 功能,我很确定它使用或引用了一个名为 tweepy 的程序。
这对我们很有帮助,听起来对您来说可能很接近。
如果有帮助请告诉我。
with open("secrets.yml") as f:
content = f.read()
# from secrets.yml import CONSUMER_KEY, CONSUMER_SECRET, ACCESS_TOKEN, ACCESS_SECRET
secret = yaml.load(content)
##################################################################################################
# authorize tweepy with CONSUMER_KEY and CONSUMER_SECRET
auth = tweepy.OAuthHandler(secret["CONSUMER_KEY"], secret["CONSUMER_SECRET"])
auth.secure = True
# read in ACCESS_TOKEN and ACCESS_SECRET variables to tweepy
auth.set_access_token(secret["ACCESS_TOKEN"], secret["ACCESS_SECRET"])