第 3 章 使用软件开发组件


3.1. 使用 Python 连接到 API

要使用 Python 连接到 REST API,您必须从 ovirtsdk.api 模块创建一个 API 类实例。要执行此操作,需要首先在脚本开始时导入类:
from ovirtsdk.api import API
API 类的结构采用多个参数。支持的参数有:
url
指定要连接的 Manager 的 URL,包括 /api 路径。这个参数是必需的。
用户名
以 User Principal Name (UPN)格式指定要连接的用户名。这个参数是必需的。
密码
指定 username 参数提供的用户名的密码。这个参数是必需的。
kerberos
使用有效的 Kerberos 票据来验证连接。有效值为 True 和 False。这个参数是可选的。
key_file
指定包含与 cert_file 指定的证书关联的私钥的 PEM 格式密钥文件。这个参数是可选的。
cert_file
指定用于在服务器上建立客户端身份的 PEM 格式的客户端证书。这个参数是可选的。
ca_file
指定服务器的证书颁发机构的证书文件。这个参数是必需的,除非将 insecure 参数设置为 True。
port
指定要使用的端口,其中尚未作为 url 参数的组件提供。这个参数是可选的。
timeout
指定在请求被视为超时前允许传递的时间(以秒为单位)。这个参数是可选的。
persistent_auth
指定是否为这个连接启用持久性身份验证。有效值为 True 和 False。此参数是可选的,默认为 False。
insecure
允许在没有证书颁发机构的情况下通过 SSL 连接。有效值为 True 和 False。如果 insecure 参数设置为 False - 它是默认值 -,则必须提供 ca_file 来保护连接。
这个选项应该谨慎使用,因为它允许中间人(MITM)攻击者欺骗服务器的身份。
filter
指定基于用户权限的过滤器是 on 或 off。有效值为 True 和 False。如果 filter 参数设置为 False - 这是默认值 -,提供的身份验证凭据必须是管理用户的。如果 filter 参数设置为 True,则可使用任何用户,管理器将根据其权限过滤用户可用的操作。
debug
指定是否为这个连接启用 debug 模式。有效值为 True 和 False。这个参数是可选的。
您可以通过创建和操作 ovirtsdk.API Python 类的单独实例来与多个 Red Hat Virtualization Manager 通信。
本例脚本创建 API 类的实例,使用 test () 方法检查连接是否正常工作,并使用 disconnect () 方法断开连接。
from ovirtsdk.api import API    
    
api_instance = API ( url="https://rhevm31.demo.redhat.com", 
                     username="admin@internal", 
                     password="Password", 
                     ca_file="/etc/pki/ovirt-engine/ca.pem")

print "Connected successfully!"

api_instance.disconnect()
有关 API 类支持的方法的完整列表,请参阅 ovirtsdk.api 模块的 pydoc 输出。
$ pydoc ovirtsdk.api
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部