Este tópico descreve como chamar as APIs do Security Center usando o Alibaba Cloud CLI. A operação DescribeCloudCenterInstances serve de exemplo para consultar informações de ativos.
Contexto
O Alibaba Cloud CLI (Alibaba Cloud Command Line Interface) é uma ferramenta de linha de comando de uso geral baseada na OpenAPI. Use o Alibaba Cloud CLI para automatizar o gerenciamento e a manutenção do Security Center. Para mais informações, consulte What is Alibaba Cloud CLI.
O Alibaba Cloud CLI não oferece suporte à chamada do Security Center (Threat Analysis) e do Security Center (SOAR). Para solicitar esse suporte, envie um ticket.
Etapa 1: Instale o Alibaba Cloud CLI
Antes de usar o Alibaba Cloud CLI, instale-o. O Alibaba Cloud CLI é compatível com Windows, Linux e macOS. Selecione o método de instalação adequado ao seu sistema operacional.
Windows: Install Alibaba Cloud CLI on Windows.
Também é possível depurar comandos do Alibaba Cloud CLI no Cloud Shell. O Cloud Shell já vem com o Alibaba Cloud CLI pré-instalado e atualiza a versão do software regularmente. Para mais informações, consulte What is Cloud Shell.
Etapa 2: Configure o Alibaba Cloud CLI
Uma conta Alibaba Cloud (conta raiz) tem permissões totais de gerenciamento e acesso em todas as operações da OpenAPI, o que representa altos riscos de segurança. Recomendamos criar um usuário RAM, conceder permissões com base no princípio do menor privilégio e usar esse usuário RAM para acessar a OpenAPI. Para visualizar as políticas de permissão compatíveis com o Security Center, consulte Security Center system access policy reference e Custom policies for Security Center.
Antes de usar o Alibaba Cloud CLI, configure a credencial de identidade e o ID da região. O Alibaba Cloud CLI aceita múltiplas credenciais de identidade. Para mais informações, consulte Configure and manage credentials. Configure uma credencial de identidade do tipo AK usando o AccessKey de um usuário RAM. Siga estas etapas:
Crie um usuário RAM e gere um AccessKey para configurar as credenciais de identidade. Para mais informações, consulte Create a RAM user e Create an AccessKey.
Conceda permissões ao usuário RAM. Este exemplo requer a permissão de acesso somente leitura ao Security Center: AliyunYundunSASReadOnlyAccess. Para mais detalhes, consulte Manage RAM user permissions.
-
Obtenha um ID de região disponível para configurar as credenciais de identidade. O Alibaba Cloud CLI usa a região especificada para iniciar chamadas à OpenAPI. Para verificar as regiões disponíveis do Security Center, consulte Endpoints.
NotaUse a opção
--regionpara especificar uma região ao executar um comando. Essa opção substitui as informações de região presentes na credencial de identidade padrão e nas variáveis de ambiente. Para mais informações, consulte Command-line options. Configure uma credencial do tipo AK usando o AccessKey do usuário RAM. Nomeie o arquivo de configuração como AkProfile. Para mais informações, consulte Configure and manage credentials.
Etapa 3: Gere exemplos de comandos CLI
No portal da OpenAPI, acesse a página de depuração do DescribeCloudCenterInstances.
Em Parameters, especifique os parâmetros da solicitação. Clique em na aba CLI Sample para visualizar o exemplo de CLI gerado.
-
Copie o exemplo de CLI ou execute-o no Cloud Shell:
Clique em Run Command
para abrir o Cloud Shell e depurar o comando.Clique em Copy
para copiar o exemplo de CLI para a área de transferência. Em seguida, cole-o em uma ferramenta de shell local para execução ou crie um script de linha de comando.
NotaAo copiar um exemplo de CLI para uma ferramenta de shell local para depuração, atente-se ao formato dos parâmetros. Para mais detalhes sobre os formatos de parâmetros de comandos CLI, consulte Understand command parameters.
O portal da OpenAPI adiciona a opção
--regionaos exemplos gerados por padrão. Ao copiar o comando para execução local, o Alibaba Cloud CLI ignora as informações de região da credencial de identidade padrão e das variáveis de ambiente, utilizando a região especificada. Exclua ou mantenha a opção conforme necessário.
Etapa 4: Chame a OpenAPI do Security Center
Exemplo 1: Liste as operações da OpenAPI do Security Center compatíveis com o Alibaba Cloud CLI
O exemplo a seguir demonstra como usar a opção --help para listar as operações da OpenAPI do Security Center compatíveis com o Alibaba Cloud CLI. Para mais informações, consulte API overview.
-
Execute o seguinte comando.
aliyun sas --help -
Resposta de exemplo.
Product: Sas (Security Center) Version: 2018-12-03 Available Api List: AddAssetSelectionCriteria Adds assets to an asset selection operation. AddBaselineCheckWhiteRecord AddCheckInstanceResultWhiteList Adds instances to the allowlist for a check item. AddCheckResultWhiteList Adds a check item to the allowlist. AddClientUserDefineRule Creates a user-defined defense rule. AddCloudVendorAccountAK AddContainerDefenseRule Creates a non-image program defense rule. AddContainerPluginRule Adds a container escape prevention rule. AddIdcProbe AddImageEventOperation Adds an image alert handling rule. AddImageVulWhiteList Adds an image vulnerability to the allowlist. AddInstallCode Creates an agent installation command.
Exemplo 2: Consulte informações de ativos
Este exemplo ilustra como usar o Alibaba Cloud CLI para chamar a operação DescribeCloudCenterInstances do Security Center e consultar informações de ativos do Elastic Compute Service (ECS) com riscos.
-
Execute o seguinte comando.
aliyun sas DescribeCloudCenterInstances --Criteria '[{"name":"riskStatus","value":"YES"}]' --MachineTypes ecs -
Resposta de exemplo.
{ "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": "ECS Instance", "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" } ] }NotaSe a chamada à OpenAPI do Security Center retornar um erro, verifique os parâmetros da solicitação e seus valores com base no código de erro.
Registre o RequestID ou a mensagem de erro do SDK presente na resposta e use o Alibaba Cloud OpenAPI Diagnostics para solucionar problemas de forma autônoma.