Mengatasi Permision Denied Pada IIS Saat Upload Gambar Beda Server


Salah satu tantangan dalam mengupload sebuah gambar ke beda server dengan menggunakan API adalah masalah permission.

Pada case kali ini saya akan coba sharing masalah yang saya temui saat melakukan impelemtasi dimana saya membuat sebuah API untuk menerima data base64 dan mengubahnya menjadi sebuah file dan meletakannya diserver khusus untuk file.

Pesan Error : Access to \\Remote_server\Folder\Folder is Denied


Berikut script yang saya gunakan untuk membuat mengkonvert base64 menjadi image, bahasa yang digunakan adalah c#

------

 private void create_tmp_img(string base64string, string imgname)
        {
            string SaveImagePath = "\\[ip_server_tujuan]\[folder]\";

            //Ensure That WE have the right path and Directory  
            if (!Directory.Exists(SaveImagePath))
            {
                //If Directory Not Exists Then Create a Directory  
                Directory.CreateDirectory(SaveImagePath);
            }
            byte[] imageBytes = Convert.FromBase64String(base64string.ToString());

            //Fetch File Content & Save that Image HERE (for this example our requested FileContent is ProfilePicture[File])  
            string ImagePathWithImageName = SaveImagePath + imgname.ToString();
            File.WriteAllBytes(ImagePathWithImageName, imageBytes);

        }

------

Untuk solving masalah ini

Pertama kita perlu membuat 2 akun credential yang sama pada masing – masing server baik server yang digunakan untuk menjalankan IIS aplikasi kita, maupun server yang digunakan sebagai share folder.




Lalu selanjutnya Pada server aplikasi IIS kita perlu setting application Pool identity menjadi custom , caranya bukan IIS manager, Pilih Application Pool > Klik kanan pada application pool yang digunakan oleh Aplikasi dan Pilih Advance setting.  > klik SET disebelah “Custom Account”


Gunakan username dan password dengan akun yang telah kita buat di point pertama, pastikan username dan password sama.

Voila silakan dijalankan kembali aplikasi nya untuk mencoba upload gambar

Bila tidak bisa juga anda bisa mendaftarkan windows credential server tujuan di Server API anda, pastikan anda mendaftakan akun yang berlevel administrator



Load comments