Bingkai Keamanan | Mitigasi
Produk/Layanan | Artikel |
---|---|
Batas Kepercayaan Mesin | |
Aplikasi Web |
|
Database | |
Gateway IoT Cloud | |
Azure Event Hub | |
Azure Document DB | |
Batas Kepercayaan Microsoft Azure | |
Batas Kepercayaan Service Fabric | |
Dynamics CRM | |
Portal Dynamics CRM | |
Azure Storage | |
Klien Seluler | |
WCF | |
API Web | |
Perangkat IoT | |
IoT Field Gateway |
Pastikan bahwa ACL yang tepat dikonfigurasi untuk membatasi akses tidak sah ke data di perangkat
Judul | Detail |
---|---|
Komponen | Batas Kepercayaan Komputer |
Fase SDL | Penyebaran |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | T/A |
Langkah-langkah | Pastikan bahwa ACL yang tepat dikonfigurasi untuk membatasi akses tidak sah ke data di perangkat |
Pastikan konten aplikasi spesifik pengguna sensitif disimpan dalam direktori profil pengguna
Judul | Detail |
---|---|
Komponen | Batas Kepercayaan Komputer |
Fase SDL | Penyebaran |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | T/A |
Langkah-langkah | Pastikan bahwa konten aplikasi spesifik pengguna sensitif disimpan dalam direktori profil pengguna. Hal ini untuk mencegah beberapa pengguna mesin mengakses data satu sama lain. |
Pastikan bahwa aplikasi yang disebarkan dijalankan dengan hak istimewa paling sedikit
Judul | Detail |
---|---|
Komponen | Batas Kepercayaan Komputer |
Fase SDL | Penyebaran |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | T/A |
Langkah-langkah | Pastikan bahwa aplikasi yang disebarkan dijalankan dengan hak istimewa paling sedikit. |
Menerapkan urutan langkah berurutan saat memproses alur logika bisnis
Judul | Detail |
---|---|
Komponen | Aplikasi Web |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | T/A |
Langkah-langkah | Untuk memverifikasi bahwa tahap ini dijalankan oleh pengguna asli Anda ingin memberlakukan aplikasi untuk hanya memproses alur logika bisnis dalam urutan langkah berurutan, dengan semua langkah yang diproses dalam waktu manusia yang realistis, dan tidak memproses kehabisan pesanan, melewatkan langkah-langkah, langkah yang diproses dari pengguna lain, atau transaksi yang terlalu cepat dikirimkan. |
Mengimplementasikan mekanisme pembatasan tarif untuk mencegah enumerasi
Judul | Detail |
---|---|
Komponen | Aplikasi Web |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | T/A |
Langkah-langkah | Pastikan pengidentifikasi sensitif acak. Mengimplementasikan kontrol CAPTCHA pada halaman anonim. Pastikan bahwa kesalahan dan pengecualian tidak boleh mengungkapkan data tertentu |
Pastikan otorisasi yang tepat ada di tempat dan prinsip hak istimewa paling sedikit diikuti
Judul | Detail |
---|---|
Komponen | Aplikasi Web |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | T/A |
Langkah-langkah | Prinsipnya berarti memberikan akun pengguna hanya hak istimewa yang penting agar pengguna bekerja. Misalnya, pengguna cadangan tidak perlu menginstal perangkat lunak: oleh karena itu, pengguna cadangan hanya memiliki hak untuk menjalankan aplikasi pencadangan dan file cadangan. Hak istimewa lainnya, seperti menginstal perangkat lunak baru, diblokir. Prinsip ini berlaku juga untuk pengguna komputer pribadi yang biasanya bekerja di akun pengguna normal, dan membuka akun yang dilindungi, akun sandi yang dilindungi (yaitu, superuser) hanya ketika situasi benar-benar menuntutnya. Prinsip ini juga dapat diterapkan pada aplikasi web Anda. Alih-alih hanya tergantung pada metode autentikasi berbasis peran menggunakan sesi, kami lebih suka menetapkan hak istimewa kepada pengguna melalui sistem Otentikasi Berbasis Database. Kami masih menggunakan sesi untuk mengidentifikasi apakah pengguna masuk dengan benar, hanya sekarang alih-alih menetapkan pengguna itu dengan peran tertentu kami menugaskannya dengan hak istimewa untuk memverifikasi tindakan mana yang dia istimewakan untuk dilakukan pada sistem. Juga pro besar dari metode ini adalah, setiap kali pengguna harus diberi lebih sedikit hak istimewa, perubahan Anda akan diterapkan dengan cepat karena penetapan tidak bergantung pada sesi yang harus berakhir terlebih dahulu. |
Logika bisnis dan keputusan otorisasi akses sumber daya tidak boleh didasarkan pada parameter permintaan masuk
Judul | Detail |
---|---|
Komponen | Aplikasi Web |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | T/A |
Langkah-langkah | Setiap kali Anda memeriksa apakah pengguna dibatasi untuk meninjau data tertentu, pembatasan akses harus diproses sisi server. UserID harus disimpan di dalam variabel sesi saat login dan harus digunakan untuk mengambil data pengguna dari database |
Contoh
SELECT data
FROM personaldata
WHERE userID=:id < - session var
Sekarang penyerang yang mungkin tidak dapat mengubah dan mengubah operasi aplikasi karena pengidentifikasi untuk mengambil data ditangani sisi server.
Pastikan konten dan sumber daya tidak dapat dimaklumi atau diakses melalui penjelajahan yang kuat
Judul | Detail |
---|---|
Komponen | Aplikasi Web |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | T/A |
Langkah-langkah | File statik dan konfigurasi sensitif tidak boleh disimpan di web-root. Untuk konten yang tidak diwajibkan untuk publik, kontrol akses yang tepat atau penghapusan konten itu sendiri harus diterapkan. Juga, penjelajahan paksa biasanya dikombinasikan dengan teknik Brute Force untuk mengumpulkan informasi dengan mencoba mengakses URL sebanyak mungkin untuk menghitung direktori dan file di server. Penyerang dapat memeriksa semua variasi file yang umumnya ada. Misalnya, pencarian file sandi akan mencakup file termasuk psswd.txt, sandi.htm, sandi.dat, dan variasi lainnya. Untuk mengurangi hal ini, kemampuan untuk mendeteksi upaya brute force harus disertakan. |
Pastikan bahwa akun yang paling tidak istimewa digunakan untuk menyambungkan ke server Database
Judul | Detail |
---|---|
Komponen | Database |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | Hierarki izin SQL, SQL dapat diamankan |
Langkah-langkah | Akun yang paling tidak istimewa harus digunakan untuk menyambungkan ke database. Proses masuk aplikasi harus dibatasi dalam database dan hanya boleh menjalankan prosedur tersimpan yang dipilih. Proses masuk aplikasi seharusnya tidak memiliki akses tabel langsung. |
Mengimplementasikan RLS Keamanan Tingkat Baris untuk mencegah penyewa mengakses data satu sama lain
Judul | Detail |
---|---|
Komponen | Database |
Fase SDL | Bangun |
Teknologi yang Berlaku | Sql Azure, OnPrem |
Atribut | Versi SQL - V12, Versi SQL - MsSQL2016 |
Referensi | Keamanan Tingkat-Baris (RLS) SQL Server |
Langkah-langkah | Keamanan Tingkat Baris memungkinkan pelanggan untuk mengontrol akses ke baris dalam tabel database berdasarkan karakteristik pengguna yang mengeksekusi kueri (misalnya, keanggotaan grup atau konteks eksekusi). Keamanan Tingkat Baris (RLS) menyederhanakan desain dan pengkodean keamanan dalam aplikasi Anda. RLS memungkinkan Anda mengimplementasikan pembatasan akses baris data. Misalnya memastikan bahwa pekerja hanya dapat mengakses baris data yang terkait dengan departemen mereka, atau membatasi akses data pelanggan hanya ke data yang relevan dengan perusahaan mereka. Logika pembatasan akses terletak di tingkat database daripada jauh dari data di tingkat aplikasi lain. Sistem database menerapkan pembatasan akses setiap kali akses data dicoba dari tingkat mana pun. Hal ini membuat sistem keamanan lebih andal dan kuat dengan mengurangi luas permukaan sistem keamanan. |
Harap dicatat bahwa RLS sebagai fitur database out-of-the-box hanya berlaku untuk SQL Server mulai 2016, Microsoft Azure SQL Database, dan Azure SQL Managed Instance. Jika fitur RLS out-of-the-box tidak diimplementasikan, harus dipastikan bahwa akses data dibatasi Menggunakan Tampilan dan Prosedur
Peran Sysadmin seharusnya hanya memiliki pengguna yang valid
Judul | Detail |
---|---|
Komponen | Database |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | Hierarki izin SQL, SQL dapat diamankan |
Langkah-langkah | Anggota peran server tetap SysAdmin harus sangat terbatas dan tidak pernah berisi akun yang digunakan oleh aplikasi. Harap tinjau daftar pengguna dalam peran dan hapus akun yang tidak perlu |
Menyambungkan ke Gateway Cloud menggunakan token yang paling tidak istimewa
Judul | Detail |
---|---|
Komponen | Gateway IoT Cloud |
Fase SDL | Penyebaran |
Teknologi yang Berlaku | Generik |
Atribut | Pilihan Gateway - Azure IoT Hub |
Referensi | Microsoft Azure Access Control Service Iot Hub |
Langkah-langkah | Berikan izin hak istimewa paling sedikit ke berbagai komponen yang tersambung ke Gateway Cloud (IoT Hub). Contoh umumnya adalah – Komponen manajemen/penyediaan perangkat menggunakan registryread/write, Event Processor (ASA) menggunakan Service Connect. Perangkat individual tersambung menggunakan kredensial Perangkat |
Gunakan kunci SAS izin kirim saja untuk menghasilkan token perangkat
Judul | Detail |
---|---|
Komponen | Microsoft Event Hub |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | Ringkasan autentikasi dan model keamanan Azure Event Hubs |
Langkah-langkah | Kunci SAS digunakan untuk menghasilkan token perangkat individual. Gunakan kunci SAS izin kirim saja saat membuat token perangkat untuk penerbit tertentu |
Jangan gunakan token akses yang menyediakan akses langsung ke Event Hub
Judul | Detail |
---|---|
Komponen | Microsoft Event Hub |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | Ringkasan autentikasi dan model keamanan Azure Event Hubs |
Langkah-langkah | Token yang memberikan akses langsung ke pusat aktivitas tidak boleh diberikan ke perangkat. Menggunakan token yang paling tidak istimewa untuk perangkat yang hanya memberikan akses ke penerbit akan membantu mengidentifikasi dan melarangnya jika ditemukan sebagai perangkat penipu atau disusupi. |
Sambungkan ke Event Hub menggunakan kunci SAS yang memiliki izin minimum yang diperlukan
Judul | Detail |
---|---|
Komponen | Microsoft Event Hub |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | Ringkasan autentikasi dan model keamanan Azure Event Hubs |
Langkah-langkah | Berikan izin hak istimewa paling sedikit ke berbagai aplikasi back-end yang tersambung ke Event Hub. Hasilkan kunci SAS terpisah untuk setiap aplikasi back-end dan hanya berikan izin yang diperlukan - Kirim, Terima, atau Kelola kepada mereka. |
Menggunakan token sumber daya untuk menyambungkan ke Azure Cosmos DB bila memungkinkan
Judul | Detail |
---|---|
Komponen | Azure Document DB |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | T/A |
Langkah-langkah | Token sumber daya dikaitkan dengan sumber daya izin Azure Cosmos DB dan menangkap hubungan antara pengguna database dan izin yang dimiliki pengguna untuk sumber daya aplikasi Azure Cosmos DB tertentu (misalnya koleksi, dokumen). Selalu gunakan token sumber daya untuk mengakses Azure Cosmos DB jika klien tidak dapat dipercaya dengan menangani kunci master atau baca-saja - seperti aplikasi pengguna akhir seperti klien seluler atau desktop. Gunakan kunci Master atau tombol baca-saja dari aplikasi backend yang dapat menyimpan kunci ini dengan aman. |
Aktifkan manajemen akses terperinci ke Langganan Microsoft Azure menggunakan Azure RBAC
Judul | Detail |
---|---|
Komponen | Batas Kepercayaan Azure |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | Tetapkan peran Azure untuk mengelola akses ke sumber daya langganan Azure Anda |
Langkah-langkah | Kontrol akses berbasis peran Azure (Azure RBAC) memungkinkan manajemen akses terperinci untuk Azure. Menggunakan Azure RBAC, Anda hanya dapat memberikan jumlah akses yang dibutuhkan pengguna untuk melakukan pekerjaan mereka. |
Membatasi akses klien ke operasi kluster menggunakan Microsoft Azure Service Fabric RBAC
Judul | Detail |
---|---|
Komponen | Batas Kepercayaan Service Fabric |
Fase SDL | Penyebaran |
Teknologi yang Berlaku | Generik |
Atribut | Lingkungan - Azure |
Referensi | Kontrol akses berbasis peran Microsoft Azure Service Fabric untuk klien Service Fabric |
Langkah-langkah | Azure Service Fabric mendukung dua jenis kontrol akses yang berbeda untuk klien yang terhubung ke klaster Kain Layanan: administrator dan pengguna. Kontrol akses memungkinkan administrator kluster untuk membatasi akses ke operasi kluster tertentu untuk berbagai kelompok pengguna, membuat kluster lebih aman. Administrator memiliki akses penuh ke kapabilitas manajemen (termasuk kemampuan baca/tulis). Secara default, pengguna hanya memiliki akses baca ke kapabilitas manajemen (misalnya, kapabilitas kueri), dan kemampuan untuk mengatasi aplikasi dan layanan. Anda menentukan dua peran klien (administrator dan klien) pada saat pembuatan kluster dengan memberikan sertifikat terpisah untuk masing-masing. |
Melakukan pemodelan keamanan dan menggunakan Keamanan Tingkat Bidang jika diperlukan
Judul | Detail |
---|---|
Komponen | Dynamics CRM |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | T/A |
Langkah-langkah | Melakukan pemodelan keamanan dan menggunakan Keamanan Tingkat Bidang jika diperlukan |
Lakukan pemodelan keamanan akun portal dengan mengingat bahwa model keamanan untuk portal berbeda dari CRM lainnya
Judul | Detail |
---|---|
Komponen | Portal Dynamics CRM |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | T/A |
Langkah-langkah | Lakukan pemodelan keamanan akun portal dengan mengingat bahwa model keamanan untuk portal berbeda dari CRM lainnya |
Memberikan izin terperinci pada berbagai entitas di Microsoft Azure Table Storage
Judul | Detail |
---|---|
Komponen | Azure Storage |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | StorageType - Tabel |
Referensi | Cara mendelegasikan akses ke objek di akun penyimpanan Microsoft Azure Anda menggunakan SAS |
Langkah-langkah | Dalam skenario bisnis tertentu, Azure Table Storage mungkin diperlukan untuk menyimpan data sensitif yang melayani pihak yang berbeda. Misalnya, data sensitif yang berkaitan dengan negara/wilayah yang berbeda. Dalam kasus seperti itu, tanda tangan SAS dapat dibuat dengan menentukan rentang kunci partisi dan baris, sehingga pengguna dapat mengakses data khusus untuk negara/wilayah tertentu. |
Mengaktifkan kontrol akses berbasis peran Microsoft Azure (Azure RBAC) ke akun penyimpanan Microsoft Azure menggunakan Azure Resource Manager
Judul | Detail |
---|---|
Komponen | Azure Storage |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | Cara mengamankan akun penyimpanan Anda dengan kontrol akses berbasis peran Microsoft Azure (Azure RBAC) |
Langkah-langkah | Saat Anda membuat akun penyimpanan baru, Anda memilih model penyebaran Classic atau Azure Resource Manager. Model Klasik untuk membuat sumber daya di Azure hanya memungkinkan akses semua atau tidak sama sekali ke langganan, dan pada gilirannya, akun penyimpanan. Dengan model Azure Resource Manager, Anda menempatkan akun penyimpanan dalam grup sumber daya dan mengontrol akses ke bidang manajemen akun penyimpanan tertentu menggunakan ID Microsoft Entra. Misalnya, Anda dapat memberi pengguna tertentu kemampuan untuk mengakses kunci akun penyimpanan, sementara pengguna lain dapat melihat informasi tentang akun penyimpanan, tetapi tidak dapat mengakses kunci akun penyimpanan. |
Mengimplementasikan jailbreak implisit atau deteksi rooting
Judul | Detail |
---|---|
Komponen | Klien Seluler |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | T/A |
Langkah-langkah | Aplikasi harus menjaga konfigurasinya sendiri dan data pengguna jika ponsel di-root atau di-jail rusak. Rooting/jail breaking menyiratkan akses tidak sah, yang tidak akan dilakukan pengguna normal di ponsel mereka sendiri. Oleh karena itu aplikasi harus memiliki logika deteksi yang tersirat pada aplikasi, untuk mendeteksi apakah ponsel telah dihapus. Logika deteksi dapat dengan mudah mengakses file yang biasanya hanya dapat diakses oleh pengguna root, misalnya:
Jika aplikasi dapat mengakses salah satu file ini, itu menunjukkan bahwa aplikasi berjalan sebagai pengguna root. |
Referensi Kelas Lemah di WCF
Judul | Detail |
---|---|
Komponen | WCF |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik, NET Framework 3 |
Atribut | T/A |
Referensi | MSDN, Fortify Kingdom |
Langkah-langkah | Sistem ini menggunakan referensi kelas yang lemah, yang mungkin memungkinkan penyerang untuk mengeksekusi kode yang tidak sah. Program mereferensikan kelas yang ditentukan pengguna yang tidak diidentifikasi secara unik. Ketika .NET memuat kelas yang diidentifikasi lemah ini, loader tipe CLR mencari kelas di lokasi berikut dalam urutan yang ditentukan:
Jika penyerang mengeksploitasi urutan pencarian CLR dengan membuat kelas alternatif dengan nama yang sama dan menempatkannya di lokasi alternatif yang akan dimuat CLR terlebih dahulu, CLR akan secara tidak sengaja mengeksekusi kode yang disediakan penyerang |
Contoh
Elemen <behaviorExtensions/>
dari file konfigurasi WCF di bawah ini menginstruksikan WCF untuk menambahkan kelas perilaku khusus ke ekstensi WCF tertentu.
<system.serviceModel>
<extensions>
<behaviorExtensions>
<add name=""myBehavior"" type=""MyBehavior"" />
</behaviorExtensions>
</extensions>
</system.serviceModel>
Menggunakan nama yang sepenuhnya memenuhi syarat (kuat) secara unik mengidentifikasi jenis dan semakin meningkatkan keamanan sistem Anda. Gunakan nama rakitan yang sepenuhnya memenuhi syarat saat mendaftarkan jenis di file machine.config dan app.config.
Contoh
Elemen <behaviorExtensions/>
dari file konfigurasi WCF di bawah ini menginstruksikan WCF untuk menambahkan kelas perilaku khusus yang sangat direferensikan ke ekstensi WCF tertentu.
<system.serviceModel>
<extensions>
<behaviorExtensions>
<add name=""myBehavior"" type=""Microsoft.ServiceModel.Samples.MyBehaviorSection, MyBehavior,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"" />
</behaviorExtensions>
</extensions>
</system.serviceModel>
Kontrol Otorisasi Implementasi-WCF
Judul | Detail |
---|---|
Komponen | WCF |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik, NET Framework 3 |
Atribut | T/A |
Referensi | MSDN, Fortify Kingdom |
Langkah-langkah | Layanan ini tidak menggunakan kontrol otorisasi. Ketika klien memanggil layanan WCF tertentu, WCF menyediakan berbagai skema otorisasi yang memverifikasi bahwa pemanggil memiliki izin untuk menjalankan metode layanan di server. Jika kontrol otorisasi tidak diaktifkan untuk layanan WCF, pengguna yang diautentikasi dapat mencapai eskalasi hak istimewa. |
Contoh
Konfigurasi berikut menginstruksikan WCF untuk tidak memeriksa tingkat otorisasi klien saat menjalankan layanan:
<behaviors>
<serviceBehaviors>
<behavior>
...
<serviceAuthorization principalPermissionMode=""None"" />
</behavior>
</serviceBehaviors>
</behaviors>
Gunakan skema otorisasi layanan untuk memverifikasi bahwa pemanggil metode layanan berwenang untuk melakukannya. WCF menyediakan dua mode dan memungkinkan definisi skema otorisasi kustom. Mode UseWindowsGroups menggunakan peran dan pengguna Windows dan mode UseAspNetRoles menggunakan penyedia peran ASP.NET, seperti SQL Server, untuk mengotentikasi.
Contoh
Konfigurasi berikut menginstruksikan WCF untuk memastikan bahwa klien adalah bagian dari grup Administrator sebelum menjalankan layanan Tambah:
<behaviors>
<serviceBehaviors>
<behavior>
...
<serviceAuthorization principalPermissionMode=""UseWindowsGroups"" />
</behavior>
</serviceBehaviors>
</behaviors>
Layanan kemudian dinyatakan sebagai berikut:
[PrincipalPermission(SecurityAction.Demand,
Role = ""Builtin\\Administrators"")]
public double Add(double n1, double n2)
{
double result = n1 + n2;
return result;
}
Mengimplementasikan mekanisme otorisasi yang tepat di ASP.NET Web API
Judul | Detail |
---|---|
Komponen | API Web |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik, MVC5 |
Atribut | N/A, Penyedia Identitas - ADFS, IdP - ID Microsoft Entra |
Referensi | Autentikasi dan Otorisasi di ASP.NET Web API |
Langkah-langkah | Informasi peran untuk pengguna aplikasi dapat berasal dari klaim ID Microsoft Entra atau ADFS jika aplikasi bergantung pada mereka sebagai Penyedia identitas atau aplikasi itu sendiri mungkin menyediakannya. Dalam salah satu kasus ini, implementasi otorisasi kustom harus memvalidasi informasi peran pengguna. Informasi peran untuk pengguna aplikasi dapat berasal dari klaim ID Microsoft Entra atau ADFS jika aplikasi bergantung pada mereka sebagai Penyedia identitas atau aplikasi itu sendiri mungkin menyediakannya. Dalam salah satu kasus ini, implementasi otorisasi kustom harus memvalidasi informasi peran pengguna. |
Contoh
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, Inherited = true, AllowMultiple = true)]
public class ApiAuthorizeAttribute : System.Web.Http.AuthorizeAttribute
{
public async override Task OnAuthorizationAsync(HttpActionContext actionContext, CancellationToken cancellationToken)
{
if (actionContext == null)
{
throw new Exception();
}
if (!string.IsNullOrEmpty(base.Roles))
{
bool isAuthorized = ValidateRoles(actionContext);
if (!isAuthorized)
{
HandleUnauthorizedRequest(actionContext);
}
}
base.OnAuthorization(actionContext);
}
public bool ValidateRoles(actionContext)
{
//Authorization logic here; returns true or false
}
}
Semua pengontrol dan metode tindakan yang perlu dilindungi harus dihiasi dengan atribut di atas.
[ApiAuthorize]
public class CustomController : ApiController
{
//Application code goes here
}
Melakukan pemeriksaan otorisasi di perangkat jika mendukung berbagai tindakan yang memerlukan tingkat izin yang berbeda
Judul | Detail |
---|---|
Komponen | Perangkat IoT |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | T/A |
Langkah-langkah | Perangkat harus memberi wewenang kepada penelepon untuk memeriksa apakah penelepon memiliki izin yang diperlukan untuk melakukan tindakan yang diminta. Misalnya, Mari kita katakan perangkat adalah Kunci Pintu Pintar yang dapat dipantau dari cloud, ditambah menyediakan fungsionalitas seperti Mengunci pintu dari jarak jauh. Kunci Pintu Pintar menyediakan fungsi membuka kunci hanya ketika seseorang secara fisik mendekati pintu dengan Kartu. Dalam hal ini, implementasi perintah dan kontrol jarak jauh harus dilakukan sedemikian rupa sehingga tidak menyediakan fungsionalitas apa pun untuk membuka pintu karena gateway cloud tidak diotorisasi untuk mengirim perintah untuk membuka pintu. |
Melakukan pemeriksaan otorisasi di Gateway Bidang jika mendukung berbagai tindakan yang memerlukan tingkat izin yang berbeda
Judul | Detail |
---|---|
Komponen | IoT Field Gateway |
Fase SDL | Bangun |
Teknologi yang Berlaku | Generik |
Atribut | T/A |
Referensi | T/A |
Langkah-langkah | Gateway Bidang harus memberi otorisasi kepada penelepon untuk memeriksa apakah penelepon memiliki izin yang diperlukan untuk melakukan tindakan yang diminta. Misalnya, harus ada izin yang berbeda untuk antarmuka pengguna admin/API yang digunakan untuk mengonfigurasi gateway bidang perangkat v/s yang terhubung ke sana. |
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