Excelシートの保護を解除する

C# .NETを使用してExcel(XLS、XLSX)の保護を解除する方法

Excel ワークシートは、さまざまな業界でデータの管理と分析に一般的に使用されています。ただし、特定のデータや式を偶発的または意図的な変更から保護する必要がある場合があります。ここでパスワード保護が役立ちます。パスワード保護により、ユーザーは Excel ワークシートへのアクセスまたは編集機能を制限できます。この機能はデータにセキュリティを提供しますが、保護されたワークシートに変更を加える必要がある場合にイライラを引き起こす可能性もあります。この記事では、C# .NET を使用して Excel ワークシートの保護を解除し、データを再び完全に制御できるようにする方法を説明します。

Excelの保護を解除するAPI

Aspose.Cells Cloud は、Excel ファイルの操作を可能にする強力で多用途の API です。また、Excel ワークシートの保護を解除できるなど、多くの利点があります。クロスプラットフォーム互換性、シームレスな統合、堅牢なセキュリティ、費用対効果の高さにより、クラウドで Excel ファイルを操作したいと考えている開発者にとって最適な選択肢です。 Aspose.Cells Cloud は、保護を解除する機能以外にも、次のようなさまざまなメリットを提供します。

  • クロスプラットフォーム互換性
  • シームレスな統合: Dropbox、Google Drive、Amazon S3 と統合し、Excel ファイルを簡単に管理できるようにします。
  • 堅牢なセキュリティ: OAuth2 認証と SSL 暗号化によりデータのセキュリティが保証されます。
  • 費用対効果が高い: 使用したサービスに対してのみ料金を支払う柔軟な価格設定オプション。

Aspose.Cells Cloud SDK for .NET (Aspose.Cells Cloud のラッパー) を使用するには、NuGet パッケージ マネージャーで Aspose.Cells-Cloud を検索し、[パッケージの追加] ボタンをクリックします。また、有効な電子メール アドレスを使用して、ダッシュボード でアカウントを作成する必要があります。

C# を使用して Excel シートの保護を解除する

Excel ワークシートからパスワードを削除するには、次のコード スニペットを使用してみてください。

// 完全な例とデータ ファイルについては、次のサイトを参照してください。 
https://github.com/aspose-cells-cloud/aspose-cells-cloud-dotnet/

// https://dashboard.aspose.cloud/ からクライアントの認証情報を取得します。
string clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
string clientID = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
        
// ClientID と ClientSecret を渡しながら CellsApi インスタンスを作成します
CellsApi cellsInstance = new CellsApi(clientID, clientSecret);

// ドライブ上の最初の Excel ワークブック
string input_Excel = "protected.xlsx";

try
{
    // 復号化情報を保持するインスタンスを作成する
    WorkbookEncryptionRequest protection = new WorkbookEncryptionRequest();
    protection.Password = "123456";
    protection.KeyLength = 128;
    protection.EncryptionType = "XOR";
    
    // Excelファイルを読み込んでクラウドストレージにアップロードする
    cellsInstance.UploadFile(input_Excel, File.OpenRead(input_Excel));

    // ワークブックのロック解除操作を初期化する
    var response = cellsInstance.CellsWorkbookDeleteDecryptDocument(input_Excel, protection, null);

    // 連結が成功した場合は成功メッセージを出力します
    if (response != null && response.Equals("OK"))
    {
        Console.WriteLine("Workbook unlock operation successful !");
        Console.ReadKey();
    }
}
catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}

上記のコード スニペットに関する詳細を以下に示します。

CellsApi cellsInstance = new CellsApi(clientID, clientSecret);

クライアントの資格情報を引数として渡しながら、CellsApi のオブジェクトを作成します。

WorkbookEncryptionRequest protection = new WorkbookEncryptionRequest();
protection.Password = "123456";
protection.KeyLength = 128;
protection.EncryptionType = "XOR";

ワークブックの復号化情報を保持するインスタンス WorkbookEncryptionRequest を作成します

cellsInstance.UploadFile(input_Excel, File.OpenRead(input_Excel));

暗号化された Excel をクラウド ストレージにアップロードします。

var response = cellsInstance.CellsWorkbookDeleteDecryptDocument(input_Excel, protection, folder);

API を呼び出して Excel の保護を解除し、出力をクラウド ストレージに保存します。

上記の例で使用されている暗号化 Excel は、protected.xlsx からダウンロードできます。

cURLコマンドを使用してExcelシートのロックを解除する

cURL コマンド経由で Aspose.Cells Cloud にアクセスすると、API を柔軟かつ簡単に操作できます。 cURL を使用すると、cURL をサポートする任意のプログラミング言語またはプラットフォームで Aspose.Cells Cloud を使用できるため、開発環境に柔軟性が提供されます。さらに、cURL は複雑なセットアップやインストールを必要としない軽量ツールであるため、開発者は API と簡単に迅速に統合できます。したがって、cURL コマンドを使用して Aspose.Cells Cloud と対話することで、ワークフローを合理化し、生産性を向上させることができます。

ここで、cURL をシステムにインストールし、クライアントの資格情報に基づいて accessToken を生成する必要があります。

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

次のコマンドを使用して、入力 Excel をクラウド ストレージにアップロードします。

curl -v "https://api.aspose.cloud/v3.0/cells/storage/file/{filePath}" \
-X PUT \
-F file=@{localFilePath} \
-H "Content-Type: multipart/form-data" \
-H "Authorization: Bearer {accessToken}"

{filePath} をクラウド ストレージにファイルを保存するパスに置き換え、{localFilePath} をローカル システム上の Excel のパスに置き換え、{accessToken} を Aspose Cloud アクセス トークンに置き換えます。 (上記で生成)。

最後に、次のコマンドを実行して、オンラインで Excel シートの保護を解除します。

curl -v "https://api.aspose.cloud/v3.0/cells/{excelFile}/encryption" \
-X DELETE \
-H  "accept: application/json" \
-H  "authorization: Bearer {accessToken}" \
-H  "Content-Type: application/json" \
-d "{  \"EncryptionType\": \"XOR\",  \"KeyLength\": 128,  \"Password\": \"123456\"}"

{excelFile} をクラウド ストレージからの暗号化された Excel ファイルの名前に置き換え、{accessToken} を上記で生成されたアクセス トークンに置き換えます。 操作が成功すると、保護されていない Excel が同じクラウド ストレージに保存されます。

結論

この記事では、クラウドで Excel ファイルを簡単に操作できる API である Aspose.Cells Cloud を使用して Excel ワークシートの保護を解除する方法について説明しました。また、クロスプラットフォーム互換性、シームレスな統合、堅牢なセキュリティ、費用対効果など、Aspose.Cells Cloud を使用する利点も強調しました。さらに、柔軟性、シンプルさ、生産性の向上など、cURL コマンド経由で Aspose.Cells Cloud にアクセスする利点についても説明しました。この記事で説明する手順に従うと、Excel ワークシートの保護を簡単に解除し、Excel ファイルの管理プロセスを自動化できます。全体として、Aspose.Cells Cloud と cURL は、クラウドで Excel ファイルを操作したいと考えている開発者にツールの強力な組み合わせを提供します。

役立つリンク

おすすめ記事

詳細については、次のリンクを参照してください。