このトピックでは、Alibaba Cloudコマンドラインインターフェイス (CLI) を使用してSecurity Centerを管理する方法について説明します。 このプロセスを説明するために、Alibaba Cloud CLIを使用してSecurity CenterのDescribeCloudCenterInstances
APIを呼び出し、ユーザーアセットを照会します。
背景
Alibaba Cloud CLIは、APIに基づいて開発された汎用のコマンドラインツールです。 Security Centerの管理とメンテナンスを自動化できます。 詳細については、「」をご参照ください。Alibaba Cloud CLIとは
制限事項
現在、Alibaba Cloud CLIは、Security CenterのCloud Threat Detection and Response (CTDR) またはSecurity Orchestration and Automation Response (SOAR) 機能の呼び出しをサポートしていません。 この機能のサポートが必要な場合は、チケットを起票してください。
手順
手順1: Alibaba Cloud CLIのインストール
システムにAlibaba Cloud CLIがインストールされていることを確認します。 Alibaba Cloud CLIは、Windows、Linux、およびmacOSユーザー向けのインストールパッケージを提供しています。
Cloud ShellでAlibaba Cloud CLIコマンドをデバッグすることもできます。Alibaba Cloud CLIはプリインストールされており、定期的に更新を受け取ります。 詳細については、「」をご参照ください。Cloud Shellとは
ステップ2: Alibaba Cloud CLIの設定
APIにアクセスする権限を付与する場合は、RAMユーザーを作成し、最小特権の原則を適用することを強くお勧めします。 Alibaba Cloudアカウントには、すべてのAlibaba CloudサービスのAPIを管理およびアクセスする権限があり、セキュリティリスクが発生する可能性があります。 Security Centerでサポートされている権限ポリシーについては、「Security Centerのシステムポリシー」および「Security Centerのカスタムポリシー」をご参照ください。
Alibaba Cloud CLIを使用する前に、ID認証情報とリージョンIDを設定する必要があります。 Alibaba Cloud CLIは、さまざまなタイプのID資格情報をサポートしています。 詳細については、「資格情報の種類」をご参照ください。
RAMユーザーのAccessKey IDでAccessKey資格情報を設定するには、次の手順を実行します。
RAMユーザーとAccessKeyペアを作成します。 詳細については、「RAMユーザーの作成」および「AccessKeyペアの作成」をご参照ください。
RAMユーザーに権限を付与します。 この例では、
AliyunYundunSASReadOnlyAccess
ポリシーを使用して、RAMユーザーにSecurity Centerへの読み取り専用アクセスを許可します。 詳細については、「RAMユーザーへの権限付与」をご参照ください。リージョンIDを識別します。 Alibaba Cloud CLIは、指定されたリージョンを使用してAPIを呼び出します。 Security Centerで使用可能なリージョンを確認するには、「エンドポイント」をご参照ください。
説明Alibaba Cloud CLIを使用する場合、
-- region
オプションでリージョンを指定して、ID資格情報の設定と環境変数の設定で設定されているデフォルトのリージョン情報をオーバーライドできます。 詳細については、「API呼び出しのコマンドラインオプション」をご参照ください。RAMユーザーのAccessKey IDでAccessKey資格情報を設定し、設定ファイルに
AkProfile
という名前を付けます。 詳細については、「設定例」をご参照ください。
ステップ3: CLIコマンドの例の生成
アクセス
DescribeCloudCenterInstancesデバッグアドレス。[パラメーター] セクションで、リクエストパラメーターを入力し、[CLIの例] タブをクリックして、生成されたCLIコマンドを表示します。
CLIコマンドをコピーするか、Cloud Shellで直接実行します。
[コマンドの実行] をクリックしてCloud Shellを起動し、コマンドのデバッグを促進します。
[コピー] をクリックしてCLIコマンドをクリップボードにコピーします。 このコマンドは、ローカルシェルで、またはスクリプト目的で使用できます。
説明デバッグのためにCLIコマンドをローカルシェルに貼り付けるときは、パラメーター形式が正しいことを確認してください。 Alibaba Cloud CLIのコマンドパラメーター形式の詳細については、「パラメーター形式」をご参照ください。
さらに、OpenAPI Explorerで生成されるサンプルコマンドには、デフォルトで
-- region
オプションが含まれています。 このコマンドをシェルにコピーすると、Alibaba Cloud CLIはデフォルトのID資格情報設定と環境変数設定のリージョン情報を無視し、指定されたリージョンで優先的にコマンドを実行します。 このオプションは、ビジネス要件に基づいて削除または保持できます。
ステップ4: Security CenterのAPIを呼び出す
例1: Alibaba Cloud CLIによって呼び出すことができるSecurity Center API操作のクエリ
-- help
オプションを使用して、Alibaba Cloud CLIで使用可能なSecurity Center API操作を一覧表示します。 詳細については、「関数別の操作の一覧」をご参照ください。
以下のコマンドを実行します。
aliyun sas --help
結果を表示します。
例2: ユーザー資産の照会
この例では、Alibaba Cloud CLIを使用してSecurity CenterのDescribeCloudCenterInstances
APIを呼び出し、Elastic Compute Service (ECS) のリスクのあるアセットを照会する方法を示します。
以下のコマンドを実行します。
aliyun sas DescribeCloudCenterInstances --Criteria '[{"name":"riskStatus","value":"YES"}]' --MachineTypes ecs
結果を表示します。
{ "Success": true, "PageInfo": { "Count": 10, "CurrentPage": 1, "PageSize": 20, "TotalCount": 10, "NextToken": "B604532DEF982B875E8360A6EFA3B***" }, "RequestId": "7D6FD965-745C-5580-A3E8-83FEC3BE1FE8", "Instances": [ { "AlarmStatus": "NO", "AssetType": "0", "AssetTypeName": "Elastic Compute Service", "AuthVersionName": "Basic edition", "Bind": false, "ClientStatus": "online", "Cores": 4, "CpuInfo": "Intel(R) Xeon(R) Platinum 8269CY CPU @ 2.50GHz", "ExposedStatus": 0, "Flag": 0, "FlagName": "ALIYUN", "GroupId": 1355****, "GroupTrace": "Ungrouped", "HcStatus": "YES", "HealthCheckCount": 0, "Importance": 1, "InstanceId": "i-bp1b84nxki0g2cyg****", "InstanceName": "example", "InternetIp": "", "IntranetIp": "172.16.****", "Ip": "172.16.****", "IpListString": "172.16.****", "Kernel": "5.10.134-16.3.al8.x86_64", "LastLoginTimestamp": 1729840886000, "MacListString": "00:16:3e:**:**:**", "Mem": 16384, "Os": "linux", "OsName": "Alibaba Cloud Linux 3.2104 LTS 64-bit", "Region": "cn-hangzhou-dg-a01", "RegionId": "cn-hangzhou", "RegionName": "China (Hangzhou)", "RiskCount": "{\"account\":0,\"agentlessAll\":0,\"agentlessBaseline\":0,\"agentlessMalicious\":0,\"agentlessSensitiveFile\":0,\"agentlessVulCve\":0,\"agentlessVulSca\":0,\"agentlessVulSys\":0,\"appNum\":0,\"asapVulCount\":0,\"baselineHigh\":0,\"baselineLow\":0,\"baselineMedium\":0,\"baselineNum\":1,\"cmsNum\":0,\"containerAsap\":0,\"containerLater\":0,\"containerNntf\":0,\"containerRemind\":0,\"containerSerious\":0,\"containerSuspicious\":0,\"cveNum\":4,\"emgNum\":0,\"health\":0,\"imageBaselineHigh\":0,\"imageBaselineLow\":0,\"imageBaselineMedium\":0,\"imageBaselineNum\":0,\"imageMaliciousFileRemind\":0,\"imageMaliciousFileSerious\":0,\"imageMaliciousFileSuspicious\":0,\"imageVulAsap\":0,\"imageVulLater\":0,\"imageVulNntf\":0,\"laterVulCount\":1,\"newSuspicious\":0,\"nntfVulCount\":3,\"remindNum\":0,\"scaNum\":0,\"seriousNum\":0,\"suspNum\":0,\"suspicious\":0,\"sysNum\":0,\"trojan\":0,\"uuid\":\"11c50347-4745-4a7a-b8dd-405f276201ff\",\"vul\":4,\"weakPWNum\":0}", "RiskStatus": "YES", "SafeEventCount": 0, "Status": "Running", "Uuid": "11c50347-4745-4a7a-b8dd-405f****", "Vendor": 0, "VendorName": "ALIYUN", "VpcInstanceId": "vpc-bp132a80775r3d7kz****", "VulCount": 4, "VulStatus": "YES" } ] }
説明Security CenterのAPIを呼び出した後にエラーが発生した場合は、エラーメッセージに基づいてリクエストパラメーターとその関連値の正確性を確認する必要があります。
Alibaba Cloud OpenAPI診断プラットフォームを使用して、自己診断のためのAPI呼び出しによって返されたRequestIDまたはSDKエラーメッセージを文書化することもできます。