Rakitan Nama Kuat (Penandatanganan Rakitan) (C++/CLI)
Topik ini membahas bagaimana Anda dapat menandatangani assembly Anda, sering disebut sebagai memberikan nama yang kuat kepada assembly Anda.
Keterangan
Saat menggunakan Visual C++, gunakan opsi linker untuk menandatangani rakitan Anda untuk menghindari masalah yang terkait dengan atribut CLR untuk penandatanganan perakitan:
Alasan untuk tidak menggunakan atribut termasuk fakta bahwa nama kunci terlihat dalam metadata rakitan, yang dapat menjadi risiko keamanan jika nama file menyertakan informasi rahasia. Selain itu, proses build yang digunakan oleh lingkungan pengembangan Visual C++ akan membatalkan kunci tempat assembly ditandatangani jika Anda menggunakan atribut CLR untuk memberikan nama yang kuat, lalu menjalankan alat pasca-pemrosesan seperti mt.exe pada assembly.
Jika Anda membangun di baris perintah, gunakan opsi linker untuk menandatangani rakitan Anda, lalu menjalankan alat pasca-pemrosesan (seperti mt.exe), Anda harus menandatangani kembali rakitan dengan sn.exe. Atau, Anda dapat membangun dan menunda menandatangani perakitan dan setelah menjalankan alat pasca-pemrosesan, menyelesaikan penandatanganan.
Jika Anda menggunakan atribut penandatanganan saat membangun di lingkungan pengembangan, Anda dapat berhasil menandatangani assembly dengan secara eksplisit memanggil sn.exe (Sn.exe (Strong Name Tool)) dalam peristiwa pasca-build. Untuk informasi selengkapnya, lihat Menentukan Peristiwa Build. Waktu build mungkin lebih sedikit jika Anda menggunakan atribut dan peristiwa pasca-build, dibandingkan dengan menggunakan opsi linker.
Opsi linker berikut mendukung penandatanganan rakitan:
/KEYFILE (Tentukan Kunci atau Pasangan Kunci untuk Menandatangani Rakitan)
/KEYCONTAINER (Tentukan Kontainer Kunci untuk Menandatangani Rakitan)
Untuk informasi selengkapnya tentang rakitan yang kuat, lihat Membuat dan Menggunakan Rakitan Dengan Nama Kuat.
Baca juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk