> For the complete documentation index, see [llms.txt](https://ayakaleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ayakaleaf-pro.ayaka.space/on-premises/id/manajemen-pengguna-dan-proyek/user-management.md).

# Manajemen pengguna

## Membuat pengguna administrator

Penerapan Overleaf Toolkit:

{% code title="Overleaf Toolkit" overflow="wrap" %}

```bash
$ bin/docker-compose exec sharelatex /bin/bash -ce "cd /overleaf/services/web && node modules/server-ce-scripts/scripts/create-user --admin --email=joe@example.com"
```

{% endcode %}

Penerapan docker-compose.yml lama:

{% code title="docker-compose lama" overflow="wrap" %}

```bash
$ docker exec sharelatex /bin/bash -ce "cd /overleaf/services/web && node modules/server-ce-scripts/scripts/create-user --admin --email=joe@example.com"
```

{% endcode %}

Perintah ini akan membuat pengguna dengan alamat email yang diberikan jika mereka belum ada, dan menjadikannya administrator. Output perintah mencakup URL yang dapat Anda kunjungi untuk menetapkan kata sandi bagi pengguna ini dan masuk untuk pertama kalinya.

{% hint style="info" %}
Untuk pendekatan terprogram, Anda juga dapat menggunakan skrip yang sama untuk membuat pengguna biasa maupun administrator. Untuk pengguna biasa, hilangkan flag --admin.
{% endhint %}

Jika Anda menggunakan akun internal untuk autentikasi dan perlu menaikkan pengguna yang sudah ada menjadi admin instance atau mencabut izin admin, lakukan hal berikut:

{% stepper %}
{% step %}

### Melalui UI Admin

* Masuk sebagai administrator yang sudah ada.
* Klik Admin -> Kelola Pengguna.
* Cari pengguna dan klik alamat email mereka.
* Gulir ke bawah ke bagian Site Admin dan klik tautan (show).
* Centang kotak Is Site Admin.
* Klik Save untuk menyelesaikan.
  {% endstep %}
  {% endstepper %}

***

## Menghapus pengguna

Seperti dijelaskan dalam panduan kami tentang [memahami penggunaan lisensi](broken://pages/7caae2bbd41c1322e74b80edf33f39b0cc6c4843), umumnya disarankan untuk tidak menghapus akun kecuali akun tersebut sudah tidak diperlukan lagi. Menghapus akun akan menghapus akun dan menyebabkan kolaborator kehilangan akses ke proyek. Saat ini tidak ada cara untuk menonaktifkan akun — akun hanya ada dengan datanya tetap disimpan atau dihapus.

Secara default, akun dihapus sementara. Untuk informasi tentang menghapus pengguna secara permanen dari instance Anda, lihat `ENABLE_CRON_RESOURCE_DELETION` di [Variabel lingkungan](broken://pages/e4ca583acbab4ab521218de58b4c3788474c0454) panduan.

{% hint style="info" %}
Akun dihapus sementara secara default. Lihat `ENABLE_CRON_RESOURCE_DELETION` untuk perilaku penghapusan permanen.
{% endhint %}

### Melalui Admin -> Kelola Pengguna

{% stepper %}
{% step %}

* Masuk sebagai administrator.
* Klik Admin -> Kelola Pengguna.
* Cari pengguna dan centang kotak di sebelah alamat email mereka.
* Klik ikon tempat sampah.
* Klik Delete untuk mengonfirmasi.
  {% endstep %}
  {% endstepper %}

### Melalui baris perintah

Akun pengguna (dan proyek-proyeknya) dapat dihapus menggunakan perintah berikut.

Penerapan Overleaf Toolkit:

{% code title="Overleaf Toolkit" %}

```bash
$ bin/docker-compose exec sharelatex /bin/bash -ce "cd /overleaf/services/web && node modules/server-ce-scripts/scripts/delete-user.mjs --email=joe@example.com"
```

{% endcode %}

Penerapan docker-compose.yml lama:

{% code title="docker-compose lama" %}

```bash
$ docker exec sharelatex /bin/bash -ce "cd /overleaf/services/web && node modules/server-ce-scripts/scripts/delete-user.mjs --email=joe@example.com"
```

{% endcode %}

{% hint style="danger" %}
Skrip penghapusan menggunakan opsi force yang dikodekan secara tetap yang memastikan penghapusan tetap berjalan bahkan jika email penghapusan akun gagal dikirim (misalnya, ketika email pengguna sudah tidak aktif lagi).
{% endhint %}

{% hint style="info" %}
Sejak versi 5.5.0, opsi --skip-email dapat digunakan untuk mencegah pengiriman email informasi kepada pengguna yang dihapus.
{% endhint %}

***

## Memulihkan pengguna yang dihapus sementara

Jika seorang pengguna hanya dihapus sementara, Anda dapat memulihkan akun dan proyek mereka.

{% stepper %}
{% step %}

* Masuk sebagai administrator.
* Klik Admin -> Kelola Pengguna.
* Cari pengguna yang ingin Anda pulihkan.
* Klik tombol Tampilkan pengguna yang dihapus.
* Klik alamat email pengguna yang dihapus.
* Klik Pulihkan Akun Ini.
* Klik Pulihkan untuk mengonfirmasi.
  {% endstep %}
  {% endstepper %}

{% hint style="danger" %}
Ketika ENABLE\_CRON\_RESOURCE\_DELETION disetel ke true, akun yang dihapus sementara dapat dipulihkan dalam jangka waktu 90 hari. Setelah 90 hari, pemulihan akun tidak mungkin dilakukan.
{% endhint %}

***

## Menghitung pengguna

Anda dapat memperoleh jumlah pengguna melalui UI admin di <https://you-instance-url/admin/user#license>. Untuk pemeriksaan dan ekspor terprogram, contoh berikut mungkin membantu.

Jumlah total pengguna:

{% code title="Jumlah total pengguna" %}

```bash
echo 'db.users.countDocuments()' | docker exec -i mongo mongosh --quiet localhost/sharelatex
# overleaf [direct: primary] sharelatex> 16
```

{% endcode %}

Jumlah total pengguna menggunakan endpoint metrik:

{% code title="Jumlah pengguna aktif dari metrik" %}

```bash
docker exec sharelatex curl http://127.0.0.1:3000/metrics | grep num_active_users
# # HELP num_active_users num_active_users
# # TYPE num_active_users gauge
# num_active_users{app="web-api",host="b3ae4ff549d8"} 16
```

{% endcode %}

Jumlah total pengguna aktif (contoh: pengguna yang aktif dalam 365 hari terakhir):

{% code title="Jumlah total pengguna aktif" %}

```bash
echo 'db.users.countDocuments({ lastActive: { $gte: new Date(new Date().getTime() - (365 * 24 * 60 * 60 * 1000)) } })' | docker exec -i mongo mongosh --quiet localhost/sharelatex
# overleaf [direct: primary] sharelatex> 10
```

{% endcode %}

***

## Memperbarui informasi akun pengguna

Cara pembaruan akun dilakukan bergantung pada apakah SSO diaktifkan.

* Jika SSO tidak digunakan:
  * Administrator dapat mengubah informasi akun pengguna melalui Admin -> Kelola Pengguna (email, nama depan, nama belakang, dan membuat tautan reset kata sandi).
  * Pengguna biasa dapat memperbarui detail mereka sendiri melalui Akun -> Pengaturan Akun (termasuk mengubah kata sandi dan membuat token autentikasi Git).
* Jika SSO digunakan:
  * Server Pro dapat dikonfigurasi untuk memperbarui nama depan dan nama belakang pengguna saat login berdasarkan sistem autentikasi.
  * Saat OVERLEAF\_SAML\_UPDATE\_USER\_DETAILS\_ON\_LOGIN atau OVERLEAF\_LDAP\_UPDATE\_USER\_DETAILS\_ON\_LOGIN bernilai true, formulir detail pengguna di <https://your-instance-url/user/settings> dinonaktifkan dan nama depan/nama belakang hanya dapat diatur di sistem manajemen identitas Anda.

Untuk detail selengkapnya lihat:

* Konfigurasi SAML 2.0: <https://docs.overleaf.com/on-premises/configuration/overleaf-toolkit/server-pro-only-configuration/saml-2.0>
* Konfigurasi LDAP: <https://docs.overleaf.com/on-premises/configuration/overleaf-toolkit/server-pro-only-configuration/ldap>

***

Terakhir diperbarui 4 bulan yang lalu

Halaman dokumentasi ini berisi tautan ke panduan eksternal dan halaman konfigurasi. Semua tautan dan parameter kueri dipertahankan seperti pada konten asli.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://ayakaleaf-pro.ayaka.space/on-premises/id/manajemen-pengguna-dan-proyek/user-management.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
