如何获取软层存储凭证?
How get the softlayer storage credendials?
我正在尝试获取授权软层网络存储的用户名、密码和主机 IQN。
我使用了这个 python 脚本,但是 shell returns []
import SoftLayer
API_USERNAME = 'xxx'
API_KEY = 'yyyy'
storageId = zzzz
client = SoftLayer.Client(
username=API_USERNAME,
api_key=API_KEY
)
client['SoftLayer_Network_Storage'].getCredentials(id=storageId)
我的代码有什么问题?
此致
试试这个:
"""
Get all the authorized hosts for a iSCSI.
Important manual pages:
http://sldn.softlayer.com/reference/datatypes/SoftLayer_Hardware
http://sldn.softlayer.com/reference/datatypes/SoftLayer_Virtual_Guest
http://sldn.softlayer.com/reference/datatypes/SoftLayer_Network_Storage
http://sldn.softlayer.com/reference/services/SoftLayer_Network_Storage
http://sldn.softlayer.com/reference/services/SoftLayer_Network_Storage/getObject
License: http://sldn.softlayer.com/article/License
Author: SoftLayer Technologies, Inc. <sldn@softlayer.com>
"""
import SoftLayer
USERNAME = 'set me'
API_KEY = 'set me'
iscsiId = 6548079
# Declares the API client
client = SoftLayer.Client(username=USERNAME, api_key=API_KEY)
networkStorageService = client['SoftLayer_Network_Storage']
objectMask = "mask[id,username,allowedVirtualGuests[fullyQualifiedDomainName,allowedHost[name,credential[username,password]]],allowedHardware[fullyQualifiedDomainName,allowedHost[name,credential[username,password]]]]"
try:
response = networkStorageService.getObject(id=iscsiId, mask=objectMask)
print(response)
except SoftLayer.SoftLayerAPIError as e:
# If there was an error returned from the SoftLayer API then bomb out with the
# error message.
print("Unable to retrieve the network storage. faultCode=%s, faultString=%s" % (e.faultCode, e.faultString))
您可以使用“SoftLayer_Network_Storage::getObject”并使用一些掩码来获取更多信息。
下面是一个向您展示的示例:“用户名”、“密码”、“Host IQN”对于授权主机(裸机服务器、虚拟服务器、IP 地址)。
Python 示例:
# So we can talk to the SoftLayer API:
import SoftLayer
# For nice debug output:
from pprint import pprint as pp
# Your SoftLayer API username and key.
API_USERNAME = 'set me'
API_KEY = 'set me'
# Set the network storage id in order to get the associated authorized hosts:
iscsiId = 6550721
mask = 'mask[id,username,allowedVirtualGuests[fullyQualifiedDomainName,allowedHost[name,credential[username,password]]],allowedHardware[fullyQualifiedDomainName,allowedHost[name,credential[username,password]]],allowedIpAddresses[ipAddress,allowedHost[name,credential[username,password]]]]'
# Set up your API client
client = SoftLayer.Client(
username=API_USERNAME,
api_key=API_KEY
)
try:
# The expected result after executing the script is: true
result = client['SoftLayer_Network_Storage'].getObject(mask=mask,id=iscsiId)
pp(result)
except SoftLayer.SoftLayerAPIError as e:
pp('Unable to get authorized hosts information faultCode=%s, faultString=%s'
% (e.faultCode, e.faultString))
参考文献:
http://developer.softlayer.com/article/Object-Masks
http://sldn.softlayer.com/reference/services/SoftLayer_Network_Storage/getObject
https://softlayer.github.io/python/list_packages/
我正在尝试获取授权软层网络存储的用户名、密码和主机 IQN。 我使用了这个 python 脚本,但是 shell returns []
import SoftLayer
API_USERNAME = 'xxx'
API_KEY = 'yyyy'
storageId = zzzz
client = SoftLayer.Client(
username=API_USERNAME,
api_key=API_KEY
)
client['SoftLayer_Network_Storage'].getCredentials(id=storageId)
我的代码有什么问题? 此致
试试这个:
"""
Get all the authorized hosts for a iSCSI.
Important manual pages:
http://sldn.softlayer.com/reference/datatypes/SoftLayer_Hardware
http://sldn.softlayer.com/reference/datatypes/SoftLayer_Virtual_Guest
http://sldn.softlayer.com/reference/datatypes/SoftLayer_Network_Storage
http://sldn.softlayer.com/reference/services/SoftLayer_Network_Storage
http://sldn.softlayer.com/reference/services/SoftLayer_Network_Storage/getObject
License: http://sldn.softlayer.com/article/License
Author: SoftLayer Technologies, Inc. <sldn@softlayer.com>
"""
import SoftLayer
USERNAME = 'set me'
API_KEY = 'set me'
iscsiId = 6548079
# Declares the API client
client = SoftLayer.Client(username=USERNAME, api_key=API_KEY)
networkStorageService = client['SoftLayer_Network_Storage']
objectMask = "mask[id,username,allowedVirtualGuests[fullyQualifiedDomainName,allowedHost[name,credential[username,password]]],allowedHardware[fullyQualifiedDomainName,allowedHost[name,credential[username,password]]]]"
try:
response = networkStorageService.getObject(id=iscsiId, mask=objectMask)
print(response)
except SoftLayer.SoftLayerAPIError as e:
# If there was an error returned from the SoftLayer API then bomb out with the
# error message.
print("Unable to retrieve the network storage. faultCode=%s, faultString=%s" % (e.faultCode, e.faultString))
您可以使用“SoftLayer_Network_Storage::getObject”并使用一些掩码来获取更多信息。 下面是一个向您展示的示例:“用户名”、“密码”、“Host IQN”对于授权主机(裸机服务器、虚拟服务器、IP 地址)。
Python 示例:
# So we can talk to the SoftLayer API:
import SoftLayer
# For nice debug output:
from pprint import pprint as pp
# Your SoftLayer API username and key.
API_USERNAME = 'set me'
API_KEY = 'set me'
# Set the network storage id in order to get the associated authorized hosts:
iscsiId = 6550721
mask = 'mask[id,username,allowedVirtualGuests[fullyQualifiedDomainName,allowedHost[name,credential[username,password]]],allowedHardware[fullyQualifiedDomainName,allowedHost[name,credential[username,password]]],allowedIpAddresses[ipAddress,allowedHost[name,credential[username,password]]]]'
# Set up your API client
client = SoftLayer.Client(
username=API_USERNAME,
api_key=API_KEY
)
try:
# The expected result after executing the script is: true
result = client['SoftLayer_Network_Storage'].getObject(mask=mask,id=iscsiId)
pp(result)
except SoftLayer.SoftLayerAPIError as e:
pp('Unable to get authorized hosts information faultCode=%s, faultString=%s'
% (e.faultCode, e.faultString))
参考文献:
http://developer.softlayer.com/article/Object-Masks http://sldn.softlayer.com/reference/services/SoftLayer_Network_Storage/getObject https://softlayer.github.io/python/list_packages/