Menjelajahi Inspeksi Label AIP di Outlook melalui VBA
Dalam lingkungan bisnis modern, kemampuan mengakses properti email secara terprogram sangat penting untuk menjaga keamanan dan kepatuhan data. Microsoft Outlook, ketika dipasangkan dengan Visual Basic for Applications (VBA), memungkinkan penyesuaian dan otomatisasi ekstensif. Tantangan khusus muncul ketika pengguna perlu memeriksa label Perlindungan Informasi Azure (AIP) yang dilampirkan pada email masuk untuk menerapkan kebijakan keamanan atau memicu alur kerja tertentu.
Namun, Outlook VBA tidak mendukung akses properti 'SensitivityLabel', yang sudah tersedia di Excel VBA dan model add-in berbasis JavaScript yang lebih baru. Keterbatasan ini mendorong perlunya metode alternatif untuk mengambil informasi label AIP tanpa menguraikan header email secara langsung, yang dapat rumit dan rawan kesalahan.
Memerintah | Keterangan |
---|---|
Application.ActiveExplorer.Selection.Item(1) | Memilih item pertama dalam pilihan saat ini di Outlook. Biasanya digunakan di VBA untuk bekerja dengan email yang dipilih saat ini. |
PropertyAccessor.GetProperty() | Mengambil properti tertentu dari item email Outlook menggunakan tag properti MAPI. Digunakan di sini untuk mengakses header email. |
Office.onReady() | Menginisialisasi fungsi ketika add-in Office dimuat dan siap, memastikan aplikasi host siap menjalankan skrip Office.js. |
loadCustomPropertiesAsync() | Memuat properti kustom yang terkait dengan item email di Outlook secara asinkron, menggunakan Office.js. Kunci untuk mengakses data email non-standar seperti label AIP di add-in. |
console.log() | Menghasilkan informasi ke konsol web, berguna untuk men-debug aplikasi JavaScript. Di sini ia mencatat label yang diambil. |
Chr(10) | Mengembalikan karakter yang sesuai dengan kode ASCII 10, yang merupakan karakter line feed (LF), yang digunakan di sini untuk menemukan jeda baris di header email. |
Analisis Mendalam tentang Fungsi Skrip untuk Pengambilan Label AIP
Skrip yang disediakan menawarkan solusi praktis untuk mengakses label Azure Information Protection (AIP) di email, sebuah fitur yang tidak dapat diakses secara langsung melalui Outlook VBA namun penting untuk langkah-langkah kepatuhan dan keamanan. Skrip pertama menggunakan VBA dalam Outlook, yang memanfaatkan Application.ActiveExplorer.Selection.Item perintah untuk memilih email yang saat ini disorot oleh pengguna. Skrip ini menggunakan PropertyAccessor.GetProperty metode dengan tag properti MAPI yang telah ditentukan sebelumnya untuk mengambil semua header email tempat informasi label sensitif mungkin disimpan.
Skrip kedua menyoroti penggunaan kerangka Office.js untuk meningkatkan fungsionalitas dalam lingkungan Outlook modern. Di sini, itu Office.onReady fungsi memastikan bahwa skrip hanya dijalankan setelah aplikasi host Office dimuat sepenuhnya, memastikan kompatibilitas dan keandalan. Ia kemudian menggunakan loadCustomPropertiesAsync metode untuk mengambil properti khusus secara asinkron, kemungkinan termasuk label AIP, yang dilampirkan ke email. Metode ini sangat berguna dalam lingkungan yang memerlukan penanganan data yang lebih baik tanpa memengaruhi pengalaman pengguna dengan panggilan sinkron.
Membuat Skrip Pengambilan Label AIP di Outlook
Menggunakan VBA untuk Ekstraksi Metadata Email
Dim oMail As Outlook.MailItem
Dim oHeaders As Outlook.PropertyAccessor
Const PR_TRANSPORT_MESSAGE_HEADERS As String = "http://schemas.microsoft.com/mapi/proptag/0x007D001E"
Dim labelHeader As String
Dim headerValue As String
Sub RetrieveAIPLabel()
Set oMail = Application.ActiveExplorer.Selection.Item(1)
Set oHeaders = oMail.PropertyAccessor
headerValue = oHeaders.GetProperty(PR_TRANSPORT_MESSAGE_HEADERS)
labelHeader = ExtractLabel(headerValue)
MsgBox "The AIP Label ID is: " & labelHeader
End Sub
Function ExtractLabel(headers As String) As String
Dim startPos As Integer
Dim endPos As Integer
startPos = InStr(headers, "MSIP_Label_")
If startPos > 0 Then
headers = Mid(headers, startPos)
endPos = InStr(headers, Chr(10)) 'Assuming line break marks the end
ExtractLabel = Trim(Mid(headers, 1, endPos - 1))
Else
ExtractLabel = "No label found"
End If
End Function
Membuat Add-In JavaScript untuk Inspeksi Label
Menggunakan Office JS API untuk Penanganan Email yang Lebih Baik
Office.onReady((info) => {
if (info.host === Office.HostType.Outlook) {
retrieveLabel();
}
});
function retrieveLabel() {
Office.context.mailbox.item.loadCustomPropertiesAsync((result) => {
if (result.status === Office.AsyncResultStatus.Succeeded) {
var customProps = result.value;
var label = customProps.get("MSIP_Label");
if (label) {
console.log("AIP Label: " + label);
} else {
console.log("No AIP Label found.");
}
} else {
console.error("Failed to load custom properties: " + result.error.message);
}
});
}
Meningkatkan Keamanan melalui Analisis Metadata Email
Metadata email dalam lingkungan perusahaan dapat memainkan peran penting dalam menjaga keamanan dan memastikan kepatuhan terhadap peraturan. Akses terhadap data ini, terutama mengenai label informasi sensitif seperti AIP, dapat memberdayakan departemen TI untuk mengotomatisasi dan menyesuaikan langkah-langkah keamanan secara efektif. Akses ini sangat penting dalam mencegah kebocoran data dan memastikan bahwa informasi sensitif dikategorikan dan dilindungi dengan benar sepanjang siklus hidupnya.
Di lingkungan yang menggunakan sistem lama seperti Outlook VBA, mengakses metadata tersebut memerlukan solusi kreatif karena kurangnya dukungan langsung untuk properti baru seperti SensitivityLabel. Kesenjangan ini sering kali memerlukan penggunaan pemrograman tambahan atau alat pihak ketiga untuk menjembatani fungsionalitas antara teknologi lama dan baru dalam lingkungan perusahaan.
Pertanyaan Umum tentang Manajemen Label Email di Outlook
- Apa itu label AIP?
- Label Perlindungan Informasi Azure (AIP) digunakan untuk mengklasifikasikan dan melindungi dokumen dan email dengan menerapkan label.
- Bisakah Outlook VBA mengakses label AIP secara langsung?
- Tidak, Outlook VBA tidak mendukung secara langsung SensitivityLabel properti yang digunakan untuk mengakses label AIP. Metode alternatif seperti penguraian header diperlukan.
- Apa artinya PropertyAccessor.GetProperty perintah lakukan?
- Perintah ini mengambil properti tertentu dari suatu objek, seperti email di Outlook, menggunakan tag properti MAPI-nya.
- Apakah ada solusi berbasis JavaScript untuk versi Outlook modern?
- Ya, model add-in berbasis JavaScript modern untuk Outlook memungkinkan akses ke properti ini melalui perpustakaan Office.js.
- Bagaimana properti kustom email dapat diakses secara asinkron di Outlook?
- Menggunakan loadCustomPropertiesAsync metode di Office.js, yang mengambil properti khusus tanpa memblokir antarmuka pengguna.
Pemikiran Akhir tentang Meningkatkan Keamanan Email di Outlook
Meskipun pengelolaan langsung label AIP di Outlook lama menggunakan VBA rumit, strategi yang dibahas memberikan solusi yang efektif. Dengan memanfaatkan Outlook VBA untuk penguraian header dan Office.js untuk menangani properti kustom di lingkungan modern, organisasi dapat memastikan protokol keamanan email mereka tetap kuat dan mudah beradaptasi terhadap persyaratan kepatuhan yang terus berkembang. Pendekatan ganda ini menggarisbawahi perlunya fleksibilitas dalam mengelola keamanan email dalam ekosistem teknologi yang beragam.