Yeniden Yayımlama

Bu genel bakış, MIP SDK'sında yeniden yayımlamaya odaklanır. Bir uygulamanın kullanıcının dosyayı düzenlemesine izin vermesi gerektiğinde, ancak sahip, haklar, içerik anahtarı vb. hakkındaki özgün yayımlama lisansı bilgilerini tutması gerektiğinde yeniden yayımlama gereklidir.

Desen şuna benzer olabilir:

  • Kullanıcı, korumalı bir belgeyi düzenlemek üzere açar.
  • Kullanıcının yalnızca uygun haklara sahip olması durumunda dosyayı düzenlemesine izin verilmelidir.
  • Kullanıcı belgeyi düzenler ve kaydeder.

Bu görevi gerçekleştirmek için MIP SDK sahte kodu aşağıdaki gibi görünebilir:

  • Hedef dosyaya işaret eden bir mip::FileHandler oluşturun.
  • mip::ProtectionHandler'nin mip::FileHandler yöntemi tarafından kullanıma sunulan öğesini GetProtection()depolayın.
  • EDIT haklarına sahip olup olmadığını kontrol etmek için AccessCheck() yöntemini çağırın.
  • Geçici bir şifresi çözülmüş çıkış almak için mip::FileHandler'u veya GetDecryptedTemporaryFileAsync()'yi kullanın.
  • Geçici dosyayı veya akış içeriğini düzenleyin ve kaydedin.
  • Geçici dosyaya işaret eden yeni bir mip::FileHandler örnek oluşturun ve depolanan SetProtection() öğesini parametre olarak sağlayarak mip::ProtectionHandler yöntemini kullanın.
  • Değişikliği kaydedin.

Özgün dosyadaki mip::ProtectionHandler öğesini kullanarak düzenlenen belgede belge sahibi, içerik kimliği ve içerik anahtarı korunur. Bu yeniden yayımlama senaryosu, uygulamanın özgün mip::ProtectionHandleröğesine bir başvuru tutmasını gerektirir.

Uygulama

Daha önce açıklandığı gibi sınıfı mip::FileHandler , hem etiketleri hem de koruma bilgilerini okuma, yazma ve kaldırma yöntemlerini kullanıma sunar. Desteklenen işlemlerin tam listesi için mip::FileHandler referans belgesini gözden geçirin.

Bu senaryoda mip::FileHandler'nin aşağıdaki yöntemleri kullanılır:

  • GetProtection()
  • CommitAsync()
  • GetDecryptedTemporaryFileAsync()
  • SetProtection()

Senaryo ayrıca mip::ProtectionHandler, korumalı akışları ve arabellekleri şifreleme ve şifre çözme, erişim denetimleri gerçekleştirme, yayımlama lisansını alma ve korunan bilgilerden öznitelikleri elde etme işlevlerini kullanıma sunar. AccessCheck() yöntemi, kullanıcının dosyayı düzenleme haklarına sahip olduğunu doğrulamak için kullanılır.

Bu yeniden koruma senaryosunu başarıyla tamamlamak için 'Sonraki adımlar' altındaki Hızlı başlangıçlar'ı gözden geçirin ve uygulamanın derlenip etiketleri başarıyla listelediğinden emin olun.

Dosyadan bir Koruma İşleyicisi oluşturma ve dosyanın şifresini çözme

mip::ProtectionHandler korumalı akışları ve arabellekleri şifreleme ve şifrelerini çözme, erişim denetimleri gerçekleştirme, yayımlama lisansını alma ve korunan bilgilerden öznitelikleri alma işlevlerini kullanıma sunar. mip::ProtectionHandler nesneleri bir ProtectionDescriptor veya serileştirilmiş bir yayımlama lisansı sağlayarak oluşturulurlar. Bu kullanım örneği için yayımlama lisansı, zaten korunan içeriğin şifresini çözerken veya lisansın zaten oluşturulmuş olduğu içeriği korurken kullanılır.

mip::FileHandler, GetProtection() ile ilişkili dosyadan mip::ProtectionHandler aldığını mip::FileHandler adlı bir yöntemle ortaya koyar. mip::ProtectionHandler Nesne alındıktan sonra, kullanıcının dosyaya erişim düzeylerini doğrulamak, dosyanın şifresini çözmek ve daha sonra düzenlendikten sonra dosyayı şifrelemek için de aynı özellik kullanılabilir.

mip::ProtectionHandler'ler AccessCheck() , kullanıcının dosya üzerinde belirli bir hakkı olduğunu doğrulamak için kullanılır ve sonuba bağlı olarak boole yanıtı döndürür. Örneğin, kullanıcının düzenleme hakları olduğunu doğrulamak için "EDIT" değerini geçiren yöntemini çağırın. Sonuç doğruysa, kullanıcının dosyayı düzenlemesine izin ver. EDIT hakkı doğrulandıktan sonra, geçici şifresi çözülmüş dosyayı almak için mip::FileHandlerGetDecryptedTemporaryFileAsync() kullanın.

Daha fazla bilgi için bkz. Şifreleme uygulamak için duyarlılık etiketlerini kullanarak içeriğe erişimi kısıtlama.

Önemli

Erişim denetimleri ve zorlama tamamen uygulama geliştiricisine aittir. VIEW haklarına sahip bir kullanıcı korumalı bilgilerin şifresini çözebilir. Kullanıcıya verilen hak kümesini doğrulamak ve kopyalamayı, düzenlemeyi veya ekran görüntülerini almayı engelleme gibi bilgi koruma denetimleri aracılığıyla bu hakları zorunlu kılmak uygulamaya aittir. Koruma denetimlerinin düzgün uygulanamaması hassas bilgilerin açığa çıkmasına neden olabilir.

Koruma uygulayarak düzenlenmiş dosyayı kaydetme ve yayımlama

Dosyanın şifresi çözüldükten sonra dosya düzenlenebilir. Düzenleme işlemi tamamlandıktan sonra değişiklikler işlenebilir. Kaydedilmiş dosyayı işlemek için geçici dosyayı kullanarak bir IFileHandler nesne oluşturun. Geçici dosya daha sonra özgün dosyadan alınan nesne kullanılarak IProtectionHandler korunabilir.

Çevrimdışı yeniden yayımlama

Yayımlama lisansı önbelleği kullanılabilir olduğunda yeniden yayımlama çevrimdışı gerçekleşebilir. Uygulama daha önce şablonları ve yayımlama lisans verilerini çevrimdışı yayımlama yoluyla önbelleğe aldıysa, yeniden yayımlama iş akışı için Rights Management hizmetine etkin bir bağlantı gerekmez.

Bu, aşağıdaki senaryolarda kullanışlıdır:

  • Uygulamanın aralıklı olarak bağlı ortamlarda çalışması gerekir.
  • Büyük toplu işlemlerin belge başına hizmet çağrıları olmadan yeniden yayımlanması gerekir.
  • Servis çağrılarından kaçınılarak daha iyi performans sağlanır.

Çevrimdışı yeniden yayımlamayı denemeden önce çevrimdışı yayımlamanın etkinleştirildiğinden ve şablonların önbelleğe alındığından emin olun. Kurulum ayrıntıları için bkz. Çevrimdışı yayımlama .

Sonraki Adımlar