Bekerja dengan pengguna, grup, dan izin di Tingkat Sistem File Jaringan (NFS) - Amazon Elastic File System

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

Bekerja dengan pengguna, grup, dan izin di Tingkat Sistem File Jaringan (NFS)

Setelah membuat sistem file, secara default hanya pengguna root (UID 0) yang telah membaca, menulis, dan mengeksekusi izin. Pengguna lain yang ingin memodifikasi sistem file harus secara eksplisit mendapatkan akses dari pengguna root. Anda dapat menggunakan titik akses untuk mengotomatiskan pembuatan direktori yang dapat ditulis oleh pengguna nonroot. Untuk informasi selengkapnya, lihat Bekerja dengan titik akses Amazon EFS.

Objek sistem file Amazon EFS memiliki mode gaya Unix yang terkait dengannya. Nilai mode ini mendefinisikan izin untuk melakukan tindakan pada objek tersebut. Pengguna yang akrab dengan sistem bergaya Unix dapat dengan mudah memahami bagaimana Amazon EFS berperilaku sehubungan dengan izin ini.

Selain itu, pada sistem bergaya Unix, pengguna dan grup dipetakan ke pengidentifikasi numerik, yang digunakan Amazon EFS untuk mewakili kepemilikan file. Untuk Amazon EFS, objek sistem file (yaitu, file, direktori, dan sebagainya) dimiliki oleh satu pemilik dan satu grup. Amazon EFS menggunakan ID numerik yang dipetakan untuk memeriksa izin saat pengguna mencoba mengakses objek sistem file.

catatan

Protokol NFS mendukung maksimum 16 ID grup (GID) per pengguna dan GID tambahan apa pun dipotong dari permintaan klien NFS. Untuk informasi selengkapnya, lihat Akses ditolak ke file yang diizinkan pada sistem file NFS.

Berikut ini, Anda dapat menemukan contoh izin dan diskusi tentang pertimbangan izin NFS untuk Amazon EFS.

Contoh kasus penggunaan dan izin sistem file Amazon EFS

Setelah membuat sistem file Amazon EFS dan memasang target untuk sistem file di VPC, Anda dapat memasang sistem file jarak jauh secara lokal di instans Amazon EC2 Anda. mountPerintah dapat me-mount direktori apa pun di sistem file. Namun, ketika Anda pertama kali membuat sistem file, hanya ada satu direktori root di/. Pengguna root dan grup root memiliki direktori yang dipasang.

mountPerintah berikut memasang direktori root dari sistem file Amazon EFS, yang diidentifikasi oleh nama DNS sistem file, pada direktori /efs-mount-point lokal.

sudo mount -t nfs -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport file-system-id.efs.aws-region.amazonaws.com:/ efs-mount-point

Mode izin awal memungkinkan:

  • read-write-executeizin ke root pemilik

  • read-executeizin ke root grup

  • read-executeizin untuk orang lain

Hanya pengguna root yang dapat memodifikasi direktori ini. Pengguna root juga dapat memberikan izin kepada pengguna lain untuk menulis ke direktori ini, misalnya:

  • Buat subdirektori per pengguna yang dapat ditulis. Untuk step-by-step instruksi, lihatWalkthrough: Buat Subdirektori Per Pengguna yang Dapat Ditulis dan Konfigurasikan Penghapusan Otomatis saat Reboot.

  • Izinkan pengguna untuk menulis ke root sistem file Amazon EFS. Seorang pengguna dengan hak akses root dapat memberikan pengguna lain akses ke sistem file.

    • Untuk mengubah kepemilikan sistem file Amazon EFS menjadi pengguna dan grup non-root, gunakan yang berikut ini:

      $ sudo chown user:group /EFSroot
    • Untuk mengubah izin sistem file menjadi sesuatu yang lebih permisif, gunakan yang berikut ini:

      $ sudo chmod 777 /EFSroot

      Perintah ini memberikan read-write-execute hak istimewa kepada semua pengguna pada semua instans EC2 yang memiliki sistem file terpasang.

Izin ID Pengguna dan Grup untuk File dan Direktori Dalam Sistem File

File dan direktori dalam sistem file Amazon EFS mendukung izin baca, tulis, dan eksekusi standar Unix berdasarkan ID pengguna dan ID grup. Ketika klien NFS memasang sistem file EFS tanpa menggunakan titik akses, ID pengguna dan ID grup yang disediakan oleh klien dipercaya. Anda dapat menggunakan titik akses EFS untuk mengganti ID pengguna dan ID grup yang digunakan oleh klien NFS. Saat pengguna mencoba mengakses file dan direktori, Amazon EFS memeriksa ID pengguna dan ID grup mereka untuk memverifikasi bahwa setiap pengguna memiliki izin untuk mengakses objek. Amazon EFS juga menggunakan ID ini untuk menunjukkan pemilik dan pemilik grup untuk file dan direktori baru yang dibuat pengguna. Amazon EFS tidak memeriksa nama pengguna atau grup — Amazon EFS hanya menggunakan pengidentifikasi numerik.

catatan

Saat membuat pengguna pada instans EC2, Anda dapat menetapkan ID pengguna numerik (UID) dan ID grup (GID) apa pun kepada pengguna. ID pengguna numerik diatur dalam /etc/passwd file pada sistem Linux. ID grup numerik ada di /etc/group file. File-file ini menentukan pemetaan antara nama dan ID. Di luar instans EC2, Amazon EFS tidak melakukan autentikasi ID ini, termasuk ID root 0.

Jika pengguna mengakses sistem file Amazon EFS dari dua instans EC2 yang berbeda, tergantung pada apakah UID untuk pengguna sama atau berbeda pada instance tersebut, Anda melihat perilaku yang berbeda, sebagai berikut:

  • Jika ID pengguna sama pada kedua instans EC2, Amazon EFS menganggapnya menunjukkan pengguna yang sama, terlepas dari instans EC2 yang digunakan. Pengalaman pengguna saat mengakses sistem file sama dari kedua instans EC2.

  • Jika ID pengguna tidak sama pada kedua instans EC2, Amazon EFS menganggap pengguna tersebut sebagai pengguna yang berbeda. Pengalaman pengguna tidak sama saat mengakses sistem file Amazon EFS dari dua instans EC2 yang berbeda.

  • Jika dua pengguna berbeda pada instans EC2 yang berbeda berbagi ID, Amazon EFS menganggap mereka sebagai pengguna yang sama.

Anda dapat mempertimbangkan untuk mengelola pemetaan ID pengguna di seluruh instans EC2 secara konsisten. Pengguna dapat memeriksa ID numerik mereka menggunakan id perintah.

$ id uid=502(joe) gid=502(joe) groups=502(joe)

Matikan ID Mapper

Utilitas NFS dalam sistem operasi termasuk daemon yang disebut ID Mapper yang mengelola pemetaan antara nama pengguna dan ID. Di Amazon Linux, daemon dipanggil rpc.idmapd dan di Ubuntu disebut. idmapd Ini menerjemahkan ID pengguna dan grup ke dalam nama, dan sebaliknya. Namun, Amazon EFS hanya berurusan dengan ID numerik. Kami menyarankan Anda menonaktifkan proses ini pada instans EC2 Anda. Di Amazon Linux, ID mapper biasanya dinonaktifkan, dan jika tidak mengaktifkannya. Untuk mematikan ID mapper, gunakan perintah yang ditunjukkan berikut.

$ service rpcidmapd status $ sudo service rpcidmapd stop

Tidak ada akar terjepit

Secara default, root squashing dinonaktifkan pada sistem file EFS. Amazon EFS berperilaku seperti server Linux NFS dengan. no_root_squash Jika ID pengguna atau grup adalah 0, Amazon EFS memperlakukan pengguna tersebut sebagai root pengguna, dan melewati pemeriksaan izin (memungkinkan akses dan modifikasi ke semua objek sistem file). Root squashing dapat diaktifkan pada koneksi klien ketika identitas AWS Identity and Access Management (AWS IAM) atau kebijakan sumber daya tidak mengizinkan akses ke tindakan. ClientRootAccess Ketika root squashing diaktifkan, pengguna root dikonversi ke pengguna dengan izin terbatas pada server NFS.

Lihat informasi yang lebih lengkap di Menggunakan IAM untuk mengontrol akses data sistem file dan Walkthrough: Aktifkan root squashing menggunakan otorisasi IAM untuk klien NFS.

Caching izin

Amazon EFS menyimpan izin file dalam cache untuk jangka waktu yang kecil. Akibatnya, mungkin ada jendela singkat di mana pengguna yang aksesnya dicabut baru-baru ini masih dapat mengakses objek itu.

Mengubah kepemilikan objek sistem file

Amazon EFS memberlakukan atribut POSIXchown_restricted. Ini berarti hanya pengguna root yang dapat mengubah pemilik objek sistem file. Root atau pengguna pemilik dapat mengubah grup pemilik objek sistem file. Namun, kecuali pengguna root, grup hanya dapat diubah menjadi salah satu yang pengguna pemilik adalah anggota.

Titik akses EFS

Titik akses menerapkan jalur pengguna, grup, dan sistem file sistem operasi ke permintaan sistem file apa pun yang dibuat menggunakan titik akses. Pengguna dan grup sistem operasi titik akses mengesampingkan informasi identitas apa pun yang disediakan oleh klien NFS. Jalur sistem file diekspos ke klien sebagai direktori root titik akses. Pendekatan ini memastikan bahwa setiap aplikasi selalu menggunakan identitas sistem operasi yang benar dan direktori yang benar saat mengakses kumpulan data berbasis file bersama. Aplikasi yang menggunakan titik akses hanya bisa mengakses data di direktori sendiri dan di bawah ini. Untuk informasi lebih lanjut tentang titik akses, lihat Bekerja dengan titik akses Amazon EFS.