

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Kueri Security Lake untuk versi AWS sumber 2 (OCSF 1.1.0)
<a name="subscriber-query-examples2"></a>

Bagian berikut memberikan panduan tentang kueri data dari Security Lake dan menyertakan beberapa contoh kueri untuk sumber yang didukung secara asli untuk versi AWS sumber 2.AWS Kueri ini dirancang untuk mengambil data secara spesifik.AWS Region Contoh-contoh ini menggunakan us-east-1 (US East (Virginia N.)). Selain itu, contoh query menggunakan `LIMIT 25` parameter, yang mengembalikan hingga 25 record. Anda dapat menghilangkan parameter ini atau menyesuaikannya berdasarkan preferensi Anda. Untuk contoh lainnya, lihat direktori [Kueri GitHub Amazon Security Lake OCSF](https://github.com/awslabs/aws-security-analytics-bootstrap/tree/main/AWSSecurityAnalyticsBootstrap/amazon_security_lake_queries).

Anda dapat menanyakan data yang disimpan Security Lake dalam AWS Lake Formation database dan tabel. Anda juga dapat membuat pelanggan pihak ketiga di konsol Security Lake, API, atau AWS CLI. Pelanggan pihak ketiga juga dapat menanyakan data Lake Formation dari sumber yang Anda tentukan.

Administrator danau data Lake Formation harus memberikan `SELECT` izin pada database dan tabel yang relevan ke identitas IAM yang menanyakan data. Pelanggan juga harus dibuat di Security Lake sebelum dapat meminta data. Untuk informasi selengkapnya tentang cara membuat pelanggan dengan akses kueri, lihat[Mengelola akses kueri untuk pelanggan Security Lake](subscriber-query-access.md).

Kueri berikut mencakup filter berbasis waktu yang digunakan `eventDay` untuk memastikan kueri Anda berada dalam pengaturan retensi yang dikonfigurasi. Untuk informasi selengkapnya, lihat [Querying data with retention settings](subscriber-query-examples.md#security-lake-retention-setting-query-data). 

Misalnya, jika data yang lebih tua dari 60 hari telah kedaluwarsa, kueri Anda harus menyertakan batasan waktu untuk mencegah mengakses data yang kedaluwarsa. Untuk periode retensi 60 hari, sertakan klausa berikut dalam kueri Anda:

```
...
WHERE time_dt > DATE_ADD('day', -59, CURRENT_TIMESTAMP)
...
```

Klausul ini menggunakan 59 hari (bukan 60) untuk menghindari data atau waktu tumpang tindih antara Amazon S3 dan Apache Iceberg.

## Tabel sumber log
<a name="log-source-table"></a>

Saat Anda menanyakan data Security Lake, Anda harus menyertakan nama tabel Lake Formation di mana data berada.

```
SELECT *
FROM "amazon_security_lake_glue_db_DB_Region"."amazon_security_lake_table_DB_Region_SECURITY_LAKE_TABLE"
WHERE time_dt BETWEEN CURRENT_TIMESTAMP - INTERVAL '7' DAY AND CURRENT_TIMESTAMP
LIMIT 25
```

Nilai umum untuk tabel sumber log meliputi yang berikut:
+ `cloud_trail_mgmt_2_0`— acara AWS CloudTrail manajemen
+ `lambda_execution_2_0`— peristiwa CloudTrail data untuk Lambda
+ `s3_data_2_0`— peristiwa CloudTrail data untuk S3
+ `route53_2_0`- Log kueri penyelesai Amazon Route 53
+ `sh_findings_2_0`—AWS Security Hub CSPM temuan
+ `vpc_flow_2_0`— Log Aliran Amazon Virtual Private Cloud (Amazon VPC)
+ `eks_audit_2_0`— Log Audit Amazon Elastic Kubernetes Service (Amazon EKS)
+ `waf_2_0`— Log AWS WAF v2

**Contoh: Semua temuan CSPM Security Hub dalam tabel dari Wilayah `sh_findings_2_0` us-east-1**

```
SELECT *
    FROM "amazon_security_lake_glue_db_us_east_1"."amazon_security_lake_table_us_east_1_sh_findings_2_0"
    WHERE time_dt BETWEEN CURRENT_TIMESTAMP - INTERVAL '7' DAY AND CURRENT_TIMESTAMP
LIMIT 25
```

## Database Wilayah
<a name="database-region"></a>

Saat Anda menanyakan data Security Lake, Anda harus menyertakan nama Wilayah database tempat Anda menanyakan data. Untuk daftar lengkap Wilayah basis data tempat Danau Keamanan saat ini tersedia, lihat [titik akhir Amazon Security Lake](https://docs.aws.amazon.com/general/latest/gr/securitylake.html).

**Contoh: Daftar aktivitas Amazon Virtual Private Cloud dari sumber IP**

Contoh berikut mencantumkan semua aktivitas VPC Amazon dari IP sumber {{192.0.2.1}} yang direkam setelah {{20230301}} (01 Maret 2023), dalam tabel {{vpc\_flow\_2\_0}} dari file. {{us-west-2}} `DB_Region`

```
SELECT * 
    FROM "amazon_security_lake_glue_db_us_east_1"."amazon_security_lake_table_us_east_1_vpc_flow_2_0"
    WHERE time_dt > TIMESTAMP '2023-03-01' 
    AND src_endpoint.ip = '192.0.2.1'
    ORDER BY time_dt desc
LIMIT 25
```

## Tanggal partisi
<a name="partition-date"></a>

Dengan mempartisi data Anda, Anda dapat membatasi jumlah data yang dipindai oleh setiap kueri, sehingga meningkatkan kinerja dan mengurangi biaya. Partisi bekerja sedikit berbeda di Security Lake 2.0 dibandingkan dengan Security Lake 1.0. Security Lake sekarang mengimplementasikan partisi melalui`time_dt`,, `region` dan. `accountid` Padahal, Security Lake 1.0 menerapkan partisi melalui`eventDay`,`region`, dan `accountid` parameter. 

Kueri `time_dt` akan secara otomatis menghasilkan partisi tanggal dari S3, dan dapat ditanyakan seperti bidang berbasis waktu di Athena.

Ini adalah contoh kueri menggunakan ` time_dt` partisi untuk menanyakan log setelah waktu 01 Maret 2023:

```
SELECT *
    FROM "amazon_security_lake_glue_db_us_east_1"."amazon_security_lake_table_us_east_1_vpc_flow_2_0"
WHERE time_dt > TIMESTAMP '2023-03-01'
AND src_endpoint.ip = '192.0.2.1'
ORDER BY time desc
LIMIT 25
```

Nilai umum untuk `time_dt` meliputi yang berikut:

**Peristiwa yang terjadi dalam 1 tahun terakhir**  
`WHERE time_dt > CURRENT_TIMESTAMP - INTERVAL '1' YEAR`

**Peristiwa yang terjadi dalam 1 bulan terakhir**  
`WHERE time_dt > CURRENT_TIMESTAMP - INTERVAL '1' MONTH`

**Peristiwa yang terjadi dalam 30 hari terakhir**  
`WHERE time_dt > CURRENT_TIMESTAMP - INTERVAL '30' DAY`

**Peristiwa yang terjadi dalam 12 jam terakhir**  
`WHERE time_dt > CURRENT_TIMESTAMP - INTERVAL '12' HOUR`

**Peristiwa yang terjadi dalam 5 menit terakhir**  
`WHERE time_dt > CURRENT_TIMESTAMP - INTERVAL '5' MINUTE`

**Peristiwa yang terjadi antara 7-14 hari yang lalu**  
`WHERE time_dt BETWEEN CURRENT_TIMESTAMP - INTERVAL '14' DAY AND CURRENT_TIMESTAMP - INTERVAL '7' DAY`

**Peristiwa yang terjadi pada atau setelah tanggal tertentu**  
`WHERE time_dt >= TIMESTAMP '2023-03-01'`

**Contoh: Daftar semua CloudTrail aktivitas dari IP sumber `192.0.2.1` pada atau setelah 1 Maret 2023 dalam tabel `cloud_trail_mgmt_1_0`**

```
SELECT *
    FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_cloud_trail_mgmt_1_0
    WHERE eventDay >= '{{20230301}}'
    AND src_endpoint.ip = '192.0.2.1'
    ORDER BY time desc
    LIMIT {{25}}
```

**Contoh: Daftar semua CloudTrail aktivitas dari sumber IP `192.0.2.1` dalam 30 hari terakhir dalam tabel `cloud_trail_mgmt_1_0`**

```
SELECT *
    FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_cloud_trail_mgmt_1_0
    WHERE eventDay > cast(date_format(current_timestamp - INTERVAL '{{30}}' day, '%Y%m%d%H') as varchar) 
    AND src_endpoint.ip = '192.0.2.1'
    ORDER BY time desc
    LIMIT {{25 }}
```

## Meminta Keamanan Danau yang dapat diamati
<a name="querying-observables-examples"></a>

Observables adalah fitur baru yang sekarang tersedia di Security Lake 2.0. Objek yang dapat diamati adalah elemen pivot yang berisi informasi terkait yang ditemukan di banyak tempat dalam acara tersebut. Kueri yang dapat diamati memungkinkan pengguna memperoleh wawasan keamanan tingkat tinggi dari seluruh kumpulan data mereka. 

Dengan menanyakan elemen tertentu dalam observable, Anda dapat membatasi kumpulan data untuk hal-hal seperti nama Pengguna tertentu, Sumber Daya UIDs,, Hash, dan informasi IPs tipe IOC lainnya

Ini adalah contoh kueri menggunakan array yang dapat diamati untuk menanyakan log di seluruh tabel VPC Flow dan Route53 yang berisi nilai IP '172.01.02.03'

```
WITH a AS 
    (SELECT 
    time_dt,
    observable.name,
    observable.value
    FROM "amazon_security_lake_glue_db_us_east_1"."amazon_security_lake_table_us_east_1_vpc_flow_2_0",
    UNNEST(observables) AS t(observable)
    WHERE time_dt BETWEEN CURRENT_TIMESTAMP - INTERVAL '7' DAY AND CURRENT_TIMESTAMP
    AND observable.value='172.01.02.03'
    AND observable.name='src_endpoint.ip'),
b as 
    (SELECT 
    time_dt,
    observable.name,
    observable.value
    FROM "amazon_security_lake_glue_db_us_east_1"."amazon_security_lake_table_us_east_1_route53_2_0",
    UNNEST(observables) AS t(observable)
    WHERE time_dt BETWEEN CURRENT_TIMESTAMP - INTERVAL '7' DAY AND CURRENT_TIMESTAMP
    AND observable.value='172.01.02.03'
    AND observable.name='src_endpoint.ip')
SELECT * FROM a
LEFT JOIN b ON a.value=b.value and a.name=b.name
LIMIT 25
```

## Contoh kueri Security Lake untuk log audit Amazon EKS
<a name="example-queries-eks-sourceversion2"></a>

Aktivitas bidang kontrol trek log Amazon EKS menyediakan log audit dan diagnostik langsung dari bidang kontrol Amazon EKS ke CloudWatch Log di akun Anda. Log ini memudahkan Anda untuk mengamankan dan menjalankan klaster Anda. Pelanggan dapat meminta log EKS untuk mempelajari jenis informasi berikut.

Berikut adalah beberapa contoh kueri untuk log audit Amazon EKS untuk versi AWS sumber 2:

**Permintaan ke URL tertentu dalam 7 hari terakhir**

```
SELECT 
    time_dt,
    actor.user.name,
    http_request.url.path,
    activity_name
FROM "amazon_security_lake_glue_db_us_east_1"."amazon_security_lake_table_us_east_1_eks_audit_2_0" 
WHERE time_dt BETWEEN CURRENT_TIMESTAMP - INTERVAL '7' DAY AND CURRENT_TIMESTAMP 
AND activity_name = 'get'
and http_request.url.path = '/apis/coordination.k8s.io/v1/'
LIMIT 25
```

**Perbarui permintaan dari '10.0.97.167' selama 7 hari terakhir**

```
SELECT 
    activity_name,
    time_dt,
    api.request,
    http_request.url.path,
    src_endpoint.ip,
    resources
FROM "amazon_security_lake_glue_db_us_east_1"."amazon_security_lake_table_us_east_1_eks_audit_2_0" 
WHERE time_dt BETWEEN CURRENT_TIMESTAMP - INTERVAL '7' DAY AND CURRENT_TIMESTAMP 
AND src_endpoint.ip = '10.0.97.167'
AND activity_name = 'Update'
LIMIT 25
```

**Permintaan dan Tanggapan yang terkait dengan sumber daya kube-controller-manager '' selama 7 hari terakhir**

```
SELECT 
    activity_name,
    time_dt,
    api.request,
    api.response,
    resource.name
FROM "amazon_security_lake_glue_db_us_east_1"."amazon_security_lake_table_us_east_1_eks_audit_2_0",
UNNEST(resources) AS t(resource)
WHERE time_dt BETWEEN CURRENT_TIMESTAMP - INTERVAL '7' DAY AND CURRENT_TIMESTAMP 
AND resource.name = 'kube-controller-manager'
LIMIT 25
```