C# 프로그램으로 PDF 파일에 열기 암호를 설정하는 방법(C# 소스 포함)


PDF 문서는 정말 많이 사용하는 문서 형식입니다.

각종 명세서나 보고서 등을 PDF 파일로 만들어 사용하게 됩니다. 보안 문서가 필요한 PDF 문서 파일을 메일에 첨부해서 많이 보내게 되는데 이때 PDF 파일에 열기 암호를 설정해서 보내게 됩니다.

회사 급여 명세서를 PDF 파일로 만들어 직원들에게 메일로 발송하거나 각 기관(회사)에서 문서를 메일로 보낼 때도 열기 암호가 설정된 PDF 문서 파일을 보내는 경우도 많이 있습니다.

암호 설정을 해야 할 PDF 파일이 적다면 PDF 편집기에서 암호를 설정할 수 있지만 대량의 PDF 파일에 암호를 설정해야 하거나 암호로 주민등록번호를 설정하는 것과 같이 자동으로 암호를 설정하지 않으면 작업이 어려운 경우 부득이 프로그램을 활용하여 PDF 문서 파일에 암호를 설정해 주어야 합니다.

이번 글에서는 C# 프로그램으로 PDF 파일에 열기 암호를 설정하는 방법(C# 소스 포함)에 대해 알아보겠습니다.

C# 프로그램으로 PDF 파일에 열기 암호를 설정하는 방법

C#으로 PDF 파일에 열기 암호를 설정하는 방법 – iTextSharp 참조 추가

C#에서 PDF 파일에 암호를 설정하기 위해 iTextSharp 라이브러리 참조가 필요합니다.
iTextSharp 라이브러리는 AGPL 라이세스이며 인터넷을 통해 쉽게 다운 받아 사용할 수 있습니다.

C#으로 PDF 파일에 열기 암호를 설정하는 방법 - iTextSharp 참조 추가

C#으로 PDF 파일에 열기 암호를 설정하는 방법 – C# 소스

▼ 아래 C# 프로그램 소스는 하나의 PDF 파일에 대해 암호를 설정하는 예제 입니다.

using iTextSharp.text;
using iTextSharp.text.pdf;
//————————–
 
string userPassword = “abcd”;    //암호
string ownerPassword = “abcd”;
 
string sPDF = @“C:\temp\test.pdf”;    //원본 파일
string ePDF = @“C:\temp\test_encrypt.pdf”;    //암호가 설정된 파일
 
using (Stream input = new FileStream(sPDF, FileMode.Open, FileAccess.Read, FileShare.Read))
{
    using (Stream output = new FileStream(ePDF, FileMode.Create, FileAccess.Write, FileShare.None))
    {
        PdfReader reader = new PdfReader(input);
        PdfEncryptor.Encrypt(reader, output, true, userPassword, ownerPassword, PdfWriter.ALLOW_PRINTING);
    }
}

결론

위의 C# 프로그램을 활용해서 선택한 임의의 파일 또는 폴더에 있는 모든 PDF 파일에 대해 암호를 설정할 수 있습니다.
뿐만 아니라 C# 프로그램으로 PDF 파일을 생성하면서 바로 암호를 설정할 수도 있습니다.

급여 명세서와 같이 각 PDF 파일마다 고유한 암호를 설정하는 것도 쉽게 구현이 가능해 집니다.

아래 나열한 C#에서 PDF 파일을 다루는 다른 포스팅 글을 함께 참고하면 다양한 기능을 구현하실 수 있습니다.





이 글이 도움이 되었기를 바랍니다. ^-^


답글 남기기