デジタル情報の保護は、常にサイバー世界の重要な側面です。許可されていないユーザーからデジタルコンテンツを保護するために、さまざまな方法とテクノロジーが考案されています。これに従って、このブログ投稿はMS PowerPointファイルのセキュリティを明示的に対象としており、PPTXドキュメントを保護するさまざまな方法を提供します。この投稿では、C#を使用してパスワードまたはデジタル署名でPowerPoint PPTXファイルを保護する方法を学習します。

PowerPointファイルを保護するためのC# API-無料ダウンロード

Aspose.Slides for .NETは、.NETアプリケーション内からPPTおよびPPTXファイルを作成、編集、および処理できるPowerPointファイル管理APIです。さらに、APIを使用すると、パスワードとデジタル署名を使用してPowerPointプレゼンテーションを保護できます。 APIをダウンロードするか、NuGetを使用して.NETアプリケーション内にインストールできます。

PM> Install-Package Aspose.Slides.NET

C#でPowerPoint PPTXファイルをパスワードで保護する

以下は、PowerPoint PPTXプレゼンテーションをパスワードで保護するための手順です。

次のコードサンプルは、C#を使用してパスワードでPPTXを保護する方法を示しています。

// プレゼンテーションファイルを表すPresentationオブジェクトをインスタンス化します
using (Presentation pres = new Presentation("presentation.pptx"))
{
    // パスワードで保護する
    pres.ProtectionManager.Encrypt("password");

    // プレゼンテーションを保存する
    pres.Save("protected-presentation.pptx", Export.SaveFormat.Pptx);
}

C#でデジタル署名を使用してPowerPointファイルを保護する

デジタル署名は、証明書を使用してデジタル情報を保護するための一般的な方法です。 MS PowerPointプレゼンテーションは、コンテンツを保護するためのデジタル署名もサポートしています。以下は、C#を使用してPPTXファイルにデジタル署名する手順です。

次のコードサンプルは、C#を使用してPowerPointプレゼンテーションにデジタル署名を追加する方法を示しています。

// プレゼンテーションファイルを表すPresentationオブジェクトをインスタンス化します
using (Presentation pres = new Presentation("presentation.pptx"))
{
    // PFXファイルとPFXパスワードを使用してDigitalSignatureオブジェクトを作成します 
    DigitalSignature signature = new DigitalSignature("testsignature1.pfx", @"testpass1");

    // 新しいデジタル署名にコメントする
    signature.Comments = "Aspose.Slides digital signing test.";

    // プレゼンテーションにデジタル署名を追加する
    pres.DigitalSignatures.Add(signature);

    // プレゼンテーションを保存する
    pres.Save("signed-presentation.pptx", Export.SaveFormat.Pptx);
}

C#を使用してデジタル署名されたPowerPointファイルを確認する

Aspose.Slides for .NETでは、プレゼンテーションがデジタル署名されているかどうかを確認することもできます。さらに、ドキュメントが改ざんまたは変更されていないかどうかを確認できます。検証を実行する手順は次のとおりです。

次のコードサンプルは、C#を使用してPowerPointプレゼンテーションのデジタル署名を検証する方法を示しています。

// プレゼンテーションファイルを表すPresentationオブジェクトをインスタンス化します
using (Presentation pres = new Presentation("presentation.pptx"))
{
    // プレゼンテーションにデジタル署名があるかどうかを確認します
    if (pres.DigitalSignatures.Count > 0)
    {
        bool allSignaturesAreValid = true;

        Console.WriteLine("Signatures used to sign the presentation: ");

        // すべてのデジタル署名が有効かどうかを確認します
        foreach (DigitalSignature signature in pres.DigitalSignatures)
        {
            Console.WriteLine(signature.Certificate.SubjectName.Name + ", "
                    + signature.SignTime.ToString("yyyy-MM-dd HH:mm") + " -- " + (signature.IsValid ? "VALID" : "INVALID"));
            allSignaturesAreValid &= signature.IsValid;
        }

        if (allSignaturesAreValid)
            Console.WriteLine("Presentation is genuine, all signatures are valid.");
        else
            Console.WriteLine("Presentation has been modified since signing.");
    }
}

結論

この記事では、さまざまな方法を使用してPowerPointファイルを保護する方法を学習しました。また、ステップバイステップガイドとコードサンプルは、C#でパスワードまたはデジタル署名を使用してPPTXファイルを保護する方法を示しています。 ドキュメントを使用して、Aspose.Slides for .NETが提供するセキュリティ機能の詳細を調べることができます。

関連項目