0

我想使用 python SDK 列出 azure 安全中心警报。

我找到了这个包: https ://pypi.org/project/azure-mgmt-security/

它必须包含在 microsoft 文档中:

https://docs.microsoft.com/en-gb/python/azure/?view=azure-python https://github.com/Azure/azure-sdk-for-python

但我找不到任何参考或示例。

有谁知道我在哪里可以找到这些信息?

此致。

4

2 回答 2

0

我只能提供一个粗略的参考。

安装包azure-mgmt-security后,你应该使用List包中的方法,源代码在这里

这是有关如何进行身份验证的文档。这是有关如何获取tenantId / client_id / key的文档。

这是我的代码:

from azure.mgmt.security import SecurityCenter
from azure.common.credentials import ServicePrincipalCredentials

subscription_id = "xxxx"

# Tenant ID for your Azure subscription
TENANT_ID = '<Your tenant ID>'

# Your service principal App ID
CLIENT = '<Your service principal ID>'

# Your service principal password
KEY = '<Your service principal password>'

credentials = ServicePrincipalCredentials(
    client_id = CLIENT,
    secret = KEY,
    tenant = TENANT_ID
)

client = SecurityCenter(credentials=credentials,subscription_id=subscription_id,asc_location="centralus")
client.alerts.list()

此外,您可以在 python 中将List Alerts api与 http 请求一起使用。

于 2019-06-27T09:11:41.650 回答
0

截至今天,即 2021 年 2 月,Microsoft 再次更改了凭据的实例化方式。这是当前的:

from azure.identity import DefaultAzureCredential

# Acquire a credential object for the app identity. When running in the cloud,
# DefaultAzureCredential uses the app's managed identity (MSI) or user-assigned service principal.
# When run locally, DefaultAzureCredential relies on environment variables named
# AZURE_CLIENT_ID, AZURE_CLIENT_SECRET, and AZURE_TENANT_ID.

credential = DefaultAzureCredential()

并且它还更改了 SecurityCenter 签名,将credentials参数重命名为credential不带“s”。

完整的文档在这里

于 2021-02-01T18:27:29.203 回答