Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede, uygulamanızın koruma uygulamadan önce davranış ve kullanıcı arabirimi kararları almaları için bir etikette yapılandırılmış koruma türünü belirlemek için MIP SDK API'lerinin nasıl kullanılacağı açıklanmaktadır. Ayrıca anahtar API'leri ve her koruma türü için beklenen davranışı özetler.
Genel bakış
MIP SDK 1.18'den itibaren Label sınıfı, bir etiketin hangi tür koruma uyguladığını belirlemek için yöntemler sağlar. Daha önce uygulamalar yalnızca HasRightsManagementPolicy() bir etiketin herhangi bir koruma uygulayıp uygulamadığını denetleyebiliyordu. Yeni yöntemler, uygulamaların aşağıdaki koruma türlerini ayırt etmelerine olanak tanır:
- İletmeyi Engelle: Alıcının içeriği iletmesini, yazdırmasını veya kopyalamasını engelleyen bir koruma.
- Yalnızca Şifrele: İçeriği şifreleyen ancak alıcının eylemlerini şifre çözme dışında kısıtlamayan koruma.
- Geçici: Kullanıcının uygulama sırasında özel izinleri (kullanıcı tanımlı haklar) tanımladığı koruma.
Bu yöntemler, uygulamaların etiketleri işleme hakkında daha akıllı kararlar almasını sağlar. Örneğin, bir e-posta uygulaması, bir etiketin İletme veya Yalnızca Şifrele koruması altında olup olmamasına bağlı olarak farklı kullanıcı arabirimi seçenekleri sunabilir.
Etiket koruma türlerini sorgulama
C++
mip::Label sınıfı aşağıdaki yöntemleri sağlar:
// Returns true if the label applies any protection.
bool HasRightsManagementPolicy() const;
// Returns true if the label applies Do Not Forward protection.
bool HasDoNotForwardProtection() const;
// Returns true if the label applies Encrypt Only protection.
bool HasEncryptOnlyProtection() const;
// Returns true if the label applies ad-hoc (user-defined) protection.
bool HasAdhocProtection() const;
Örnek: Etiket koruma türlerini inceleme
for (const auto& label : engine->ListSensitivityLabels()) {
std::cout << "Label: " << label->GetName() << std::endl;
if (label->HasRightsManagementPolicy()) {
if (label->HasDoNotForwardProtection()) {
std::cout << " Protection type: Do Not Forward" << std::endl;
} else if (label->HasEncryptOnlyProtection()) {
std::cout << " Protection type: Encrypt Only" << std::endl;
} else if (label->HasAdhocProtection()) {
std::cout << " Protection type: Ad-hoc (user-defined permissions)" << std::endl;
} else {
std::cout << " Protection type: Template-based" << std::endl;
}
} else {
std::cout << " No protection" << std::endl;
}
}
C# (.NET)
.NET sarmalayıcısında Label sınıfı eşleşen özellikleri kullanıma sunar:
label.HasRightsManagementPolicy // bool
label.HasDoNotForwardProtection // bool
label.HasEncryptOnlyProtection // bool
label.HasAdhocProtection // bool
Örnek: Etiket koruma türlerini inceleme
foreach (var label in engine.SensitivityLabels)
{
Console.WriteLine($"Label: {label.Name}");
if (label.HasRightsManagementPolicy)
{
if (label.HasDoNotForwardProtection)
Console.WriteLine(" Protection type: Do Not Forward");
else if (label.HasEncryptOnlyProtection)
Console.WriteLine(" Protection type: Encrypt Only");
else if (label.HasAdhocProtection)
Console.WriteLine(" Protection type: Ad-hoc (user-defined permissions)");
else
Console.WriteLine(" Protection type: Template-based");
}
else
{
Console.WriteLine(" No protection");
}
}
Mevcut API'ler ile ilişki
Bu yeni yöntemler mevcut HasRightsManagementPolicy() yöntemi genişletir. İlişki şu şekildedir:
- Eğer
HasRightsManagementPolicy()falsedöndürürse, üç yeni yöntemin tümü defalsedöndürür. - Eğer
HasRightsManagementPolicy()döndürürse, yeni yöntemlerden en az biritruedöndürür veya etiket şablon tabanlı koruma kullanıyorsa hiçbiritruedöndürmez. - Bir etiket, geçici (kullanıcı tanımlı izinler) ile İletme Yasağı veya Sadece Şifreleme'yi birleştirebilir. Bu birleşik durumlarda:
-
HasDoNotForwardProtection()etiket, İletme korumasını uyguladığında, geçici davranış içerse de içermese detruedöndürür. -
HasEncryptOnlyProtection(), etiket geçici davranış içerse de içermese de Verileri Yalnızca Şifrele koruması uyguladığındatruedöndürür. -
HasAdhocProtection(), etiket bağımsız geçici koruma uyguladığında (İletme veya Yalnızca Şifrele olmadan) yalnızcatruedöner.
-