

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

# Menggunakan skrip Detective Python untuk mengelola akun
<a name="detective-github-scripts"></a>

Amazon Detective menyediakan satu set skrip Python open-source di repositori. GitHub [amazon-detective-multiaccount-scripts](https://github.com/aws-samples/amazon-detective-multiaccount-scripts) Skrip membutuhkan Python 3.

Anda dapat menggunakan ini untuk melakukan tugas-tugas berikut:
+ Aktifkan Detektif untuk akun administrator di seluruh Wilayah.

  Saat mengaktifkan Detektif, Anda dapat menetapkan nilai tag ke grafik perilaku.
+ Tambahkan akun anggota ke grafik perilaku akun administrator di seluruh Wilayah.
+ Secara opsional mengirim email undangan ke akun anggota. Anda juga dapat mengonfigurasi permintaan untuk tidak mengirim email undangan.
+ Hapus akun anggota dari grafik perilaku akun administrator di seluruh Wilayah.
+ Nonaktifkan Detektif untuk akun administrator di seluruh Wilayah. Ketika akun administrator menonaktifkan Detektif, grafik perilaku akun administrator di setiap Wilayah akan dinonaktifkan.

## Ikhtisar `enableDetective.py` skrip
<a name="enabledetective-script-overview"></a>

`enableDetective.py`Script melakukan hal berikut:

1. Mengaktifkan Detektif masuk untuk akun administrator di setiap Wilayah tertentu, jika akun administrator belum mengaktifkan Detektif di Wilayah tersebut.

   Saat Anda menggunakan skrip untuk mengaktifkan Detektif, Anda dapat menetapkan nilai tag ke grafik perilaku.

1. Secara opsional mengirim undangan dari akun administrator ke akun anggota yang ditentukan untuk setiap grafik perilaku.

   Pesan email undangan menggunakan konten pesan default dan tidak dapat disesuaikan.

   Anda juga dapat mengonfigurasi permintaan untuk tidak mengirim email undangan.

1. Secara otomatis menerima undangan untuk akun anggota.

   Karena skrip secara otomatis menerima undangan, akun anggota dapat mengabaikan pesan-pesan ini.

   Kami merekomendasikan untuk menghubungi akun anggota secara langsung untuk memberi tahu mereka bahwa undangan diterima secara otomatis.

## Ikhtisar `disableDetective.py` skrip
<a name="disabledetective-script-overview"></a>

`disableDetective.py`Skrip menghapus akun anggota yang ditentukan dari grafik perilaku akun administrator di seluruh Wilayah yang ditentukan.

Ini juga menyediakan opsi untuk menonaktifkan Detektif untuk akun administrator di seluruh Wilayah yang ditentukan.

## Izin yang diperlukan untuk skrip
<a name="github-scripts-permissions"></a>

Skrip memerlukan AWS peran yang sudah ada sebelumnya di akun administrator dan di semua akun anggota yang Anda tambahkan atau hapus.

**catatan**  
Nama peran harus sama di semua akun.

[Praktik terbaik yang direkomendasikan](https://docs.aws.amazon.com/detective/latest/userguide/security_iam_id-based-policy-examples.html#security_iam_service-with-iam-policy-best-practices) oleh kebijakan IAM adalah menggunakan peran yang paling sedikit cakupan. Untuk menjalankan alur kerja skrip untuk [membuat grafik](https://docs.aws.amazon.com/detective/latest/APIReference/API_CreateGraph.html), [membuat anggota](https://docs.aws.amazon.com/detective/latest/APIReference/API_CreateMembers.html), dan [menambahkan anggota ke grafik](https://docs.aws.amazon.com/detective/latest/APIReference/API_AcceptInvitation.html), izin yang diperlukan adalah:
+ detektif: CreateGraph
+ detektif: CreateMembers
+ detektif: DeleteGraph
+ detektif: DeleteMembers
+ detektif: ListGraphs
+ detektif: ListMembers
+ detektif: AcceptInvitation

**Hubungan kepercayaan peran**

Hubungan kepercayaan peran harus memungkinkan instans atau kredensil lokal Anda untuk mengambil peran tersebut.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
            "AWS": "arn:aws:iam::{{123456789012}}:user/{{john_doe}}"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

Jika Anda tidak memiliki peran umum yang menyertakan izin yang diperlukan, Anda harus membuat peran dengan setidaknya izin tersebut di setiap akun anggota. Anda juga harus membuat peran di akun administrator.

Saat Anda membuat peran, pastikan Anda melakukan hal berikut:
+ Gunakan nama peran yang sama di setiap akun.
+ Tambahkan izin yang diperlukan di atas (disarankan) atau pilih kebijakan [AmazonDetectiveFullAccess](https://docs.aws.amazon.com/detective/latest/userguide/security-iam-awsmanpol.html#security-iam-awsmanpol-amazondetectivefullaccess)terkelola.
+ Tambahkan blok hubungan kepercayaan peran seperti yang dibahas di atas.

Untuk mengotomatiskan proses ini, Anda dapat menggunakan `EnableDetective.yaml` CloudFormation template. Karena template hanya membuat sumber daya global, template dapat dijalankan di Wilayah mana pun.

## Menyiapkan lingkungan run untuk skrip Python
<a name="github-script-setup"></a>

Anda dapat menjalankan skrip dari instans EC2 atau dari mesin lokal.

### Meluncurkan dan mengonfigurasi instans EC2
<a name="github-setup-ec2-instance"></a>

Salah satu opsi untuk menjalankan skrip adalah menjalankannya dari instance EC2.

**Untuk meluncurkan dan mengkonfigurasi instans EC2**

1. Luncurkan instans EC2 di akun administrator Anda. Untuk detail tentang cara meluncurkan instans EC2, lihat [Memulai Instans Linux Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EC2_GetStarted.html) di Panduan Pengguna Amazon *EC2*.

1. Lampirkan ke instance peran IAM yang memiliki izin untuk memungkinkan instance memanggil `AssumeRole` dalam akun administrator.

   Jika Anda menggunakan `EnableDetective.yaml` CloudFormation template, maka peran instance dengan profil bernama `EnableDetective` telah dibuat.

   Jika tidak, untuk informasi tentang membuat peran instans, lihat posting blog [Mudah Ganti atau Lampirkan Peran IAM ke Instans EC2 yang Ada dengan Menggunakan Konsol EC2](https://aws.amazon.com/blogs//security/easily-replace-or-attach-an-iam-role-to-an-existing-ec2-instance-by-using-the-ec2-console/).

1. Instal perangkat lunak yang diperlukan:
   + **TEPAT:** `sudo apt-get -y install python3-pip python3 git`
   + **RPM:** `sudo yum -y install python3-pip python3 git`
   + **Boto (versi minimum 1.15):** `sudo pip install boto3`

1. Kloning repositori ke instance EC2.

   ```
   git clone https://github.com/aws-samples/amazon-detective-multiaccount-scripts.git
   ```

### Mengkonfigurasi mesin lokal untuk menjalankan skrip
<a name="github-setup-local-machine"></a>

Anda juga dapat menjalankan skrip dari mesin lokal Anda.

**Untuk mengkonfigurasi mesin lokal untuk menjalankan skrip**

1. Pastikan Anda telah menyiapkan kredensi mesin lokal untuk akun administrator Anda yang memiliki izin untuk menelepon. `AssumeRole`

1. Instal perangkat lunak yang diperlukan:
   + Python 3
   + Boto (versi minimum 1.15)
   + GitHub skrip    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/detective/latest/userguide/detective-github-scripts.html)

## Membuat `.csv` daftar akun anggota untuk menambah atau menghapus
<a name="github-scripts-csv-file"></a>

Untuk mengidentifikasi akun anggota yang akan ditambahkan atau dihapus dari grafik perilaku, Anda menyediakan `.csv` file yang berisi daftar akun.

Buat daftar setiap akun pada baris terpisah. Setiap entri akun anggota berisi ID AWS akun dan alamat email pengguna root akun.

Lihat contoh berikut ini:

```
111122223333,srodriguez@example.com
444455556666,rroe@example.com
```

## Berlari `enableDetective.py`
<a name="github-scripts-execute-enabledetective"></a>

Anda dapat menjalankan `enableDetective.py` skrip dari instans EC2 atau mesin lokal Anda.

**Untuk menjalankan `enableDetective.py`**

1. Salin `.csv` file ke `amazon-detective-multiaccount-scripts` direktori pada instans EC2 atau mesin lokal Anda.

1. Ubah ke direktori `amazon-detective-multiaccount-scripts`.

1. Jalankan `enableDetective.py` skrip.

   ```
   enableDetective.py --master_account {{administratorAccountID}} --assume_role {{roleName}} --input_file {{inputFileName}} --tags {{tagValueList}} --enabled_regions {{regionList}}  --disable_email
   ```

Saat Anda menjalankan skrip, ganti nilai berikut:

`{{administratorAccountID}}`  
ID AWS akun untuk akun administrator.

`{{roleName}}`  
Nama AWS peran yang akan diambil di akun administrator dan setiap akun anggota.

`{{inputFileName}}`  
Nama `.csv` file yang berisi daftar akun anggota untuk ditambahkan ke grafik perilaku akun administrator.

`{{tagValueList}}`  
(Opsional) Daftar nilai tag yang dipisahkan koma untuk ditetapkan ke grafik perilaku baru.  
Untuk setiap nilai tag, formatnya adalah`{{key}}={{value}}`. Contoh:  

```
--tags Department=Finance,Geo=Americas
```

`{{regionList}}`  
(Opsional) Daftar Wilayah yang dipisahkan koma untuk menambahkan akun anggota ke grafik perilaku akun administrator. Contoh:  

```
--enabled_regions us-east-1,us-east-2,us-west-2
```
Akun administrator mungkin belum mengaktifkan Detektif di Wilayah. Dalam hal ini, skrip mengaktifkan Detektif dan membuat grafik perilaku baru untuk akun administrator.  
Jika Anda tidak memberikan daftar Wilayah, maka skrip bertindak di semua Wilayah yang didukung Detektif.

`--disable_email`  
(Opsional) Jika disertakan, Detektif tidak mengirim email undangan ke akun anggota.

## Berlari `disableDetective.py`
<a name="github-scripts-execute-disabledetective"></a>

Anda dapat menjalankan `disableDetective.py` skrip dari instans EC2 atau mesin lokal Anda.

**Untuk menjalankan `disableDetective.py`**

1. Salin `.csv` file ke `amazon-detective-multiaccount-scripts` direktori.

1. Untuk menggunakan `.csv` file untuk menghapus akun anggota yang terdaftar dari grafik perilaku akun administrator di seluruh daftar Wilayah yang ditentukan, jalankan `disableDetective.py` skrip sebagai berikut:

   ```
   disabledetective.py --master_account {{administratorAccountID}} --assume_role {{roleName}} --input_file {{inputFileName}} --disabled_regions {{regionList}}
   ```

1. Untuk menonaktifkan Detektif untuk akun administrator di semua Wilayah, jalankan `disableDetective.py` skrip dengan bendera. `--delete-master`

   ```
   disabledetective.py --master_account {{administratorAccountID}} --assume_role {{roleName}} --input_file {{inputFileName}} --disabled_regions {{regionList}} --delete_master
   ```

Saat Anda menjalankan skrip, ganti nilai berikut:

`{{administratorAccountID}}`  
ID AWS akun untuk akun administrator.

`{{roleName}}`  
Nama AWS peran yang akan diambil di akun administrator dan setiap akun anggota.

`{{inputFileName}}`  
Nama `.csv` file yang berisi daftar akun anggota untuk dihapus dari grafik perilaku akun administrator.  
Anda harus memberikan `.csv` file bahkan jika Anda menonaktifkan Detektif.

`{{regionList}}`  
(Opsional) Daftar Wilayah yang dipisahkan koma untuk melakukan salah satu hal berikut:  
+ Hapus akun anggota dari grafik perilaku akun administrator.
+ Jika `--delete-master` bendera disertakan, nonaktifkan Detektif.
Contoh:  

```
--disabled_regions us-east-1,us-east-2,us-west-2
```
Jika Anda tidak memberikan daftar Wilayah, maka skrip bertindak di semua Wilayah yang didukung Detektif.