Se fornecermos uma tradução da versão em inglês do guia, a versão em inglês prevalecerá
caso haja qualquer conflito entre as versões. A tradução é fornecida com o uso de
tradução por máquina.
Instalar do AWS Encryption SDK para C
Este tópico explica como instalar o AWS Encryption SDK para C em todas as plataformas
compatíveis. Se você estiver com problemas em sua instalação, relate o problema no
repositório do aws-encryption-sdk-c ou use o link Feedback no canto inferior direito desta página.
Antes de começar, decida se deseja usar o AWS Key Management Service (AWS KMS) para gerar e proteger as chaves de criptografia que protegem seus dados.
Caso contrário, você precisa fornecer chaves mestras geradas e protegidas por você.
Se você usar o AWS KMS, precisará instalar o AWS SDK para C++.
Se não usar módulos de segurança de hardware (HSMs) nem outro serviço de gerenciamento
de chaves de criptografia, recomendamos o AWS KMS. Você precisa criar pelo menos uma
chave mestra de cliente do AWS KMS. Para obter instruções, consulte Criação de chaves.
Bibliotecas necessárias
O AWS Encryption SDK para C requer as seguintes bibliotecas:
-
OpenSSL 1.0.2 ou superior, incluindo 1.1.0 ou posterior: o SDK de criptografia da AWS usa
os algoritmos de criptografia e outros primitivos de criptografia na biblioteca de
criptografia OpenSSL. O SDK não define nem cria nenhuma primitiva de criptografia.
-
aws-c-common 0.3.0 ou posterior: esta biblioteca define ferramentas e estruturas de uso geral
utilizadas pelo AWS Encryption SDK para C. Ela é instalada automaticamente quando
você instala o AWS SDK para C++.
A versão preferencial da biblioteca aws-c-common
é instalada automaticamente quando você instala o AWS SDK para C++. Se você estiver
instalando o SDK para C++, não instale a biblioteca aws-c-common
separadamente.
Para compilar o SDK, você precisa de:
Para usar o AWS Encryption SDK para C com o AWS KMS, você precisa do seguinte:
-
AWS SDK para C++ 1.7.36 ou posterior: o SDK de criptografia da AWS para C usa o AWS SDK para C++ para
interagir com o AWS KMS. Para usar o AWS KMS para proteger suas chaves de criptografia
e executar muitos dos exemplos neste guia e no repositório, instale o SDK para C++.
Esse SDK de C++ requer um compilador de C++ e a ferramenta curl
.
Instalar o AWS Encryption SDK para C
Use o seguinte procedimento para instalar os componentes necessários e compilar o
SDK de criptografia da AWS para C em sua plataforma preferencial.
- Amazon Linux
-
Estas instruções instalam o AWS Encryption SDK para C em uma instância do Amazon Elastic
Compute Cloud (Amazon EC2) com o Amazon Linux 1.
-
Instale o CMake 3.9 ou posterior.
Faça download e instale o CMake 3.9 ou posterior. Depois, confirme se o CMake
está em seu caminho. Não use a versão mais antiga do CMake instalada pelo yum
.
-
Instale as bibliotecas dependentes.
These instructions install the tools that the SDK de criptografia da AWS requires,
including the aws-c-common
library, which includes many of the
basic functions that the AWS Encryption SDK para C uses.
Run option
A or B, but not both.
If you plan to use a KMS
keyring, or run the examples in the AWS Encryption SDK para C
that use the Token de autenticação do AWS KMS, use installation option A. This option installs the AWS SDK para C++, which is
required for the SDK de criptografia da AWS to interact with AWS Key Management Service
(AWS KMS). Installing the SDK para C++
automatically installs the aws-c-common
library for you.
Opção A: Instalar com AWS SDK para C++ (para AWS KMS).
The AWS SDK para C++ is required to use the AWS Encryption SDK para C with AWS KMS.
It is also
required for many of the examples in this guide
and the examples in the aws-encryption-sdk-c
repository.
Run the following commands to download and install the dependent
libraries for the SDK de criptografia da AWS and SDK para C++.
sudo yum update -y
sudo yum install -y openssl-devel git libcurl-devel gcc-c++
Depois, para fazer download e instalar o SDK para C++, mude para seu diretório de
compilações de preferência e execute os comandos a seguir. Quando você instala o SDK
para C++, o aws-c-common
é instalada automaticamente. Não a instale novamente.
Estes comandos instalam apenas os módulos do AWS KMS do SDK para C++. Se você estiver
usando outras bibliotecas no SDK para C++, omita o parâmetro -DBUILD_ONLY="kms"
, mas a instalação poderá demorar mais.
git clone https://github.com/aws/aws-sdk-cpp.git
mkdir build-aws-sdk-cpp && cd build-aws-sdk-cpp
cmake -DBUILD_SHARED_LIBS=ON -DBUILD_ONLY="kms" -DENABLE_UNITY_BUILD=ON ../aws-sdk-cpp
make && sudo make install ; cd ..
Opção B: Instalar sem SDK para C++.
Use these installation instructions only if you are not using the
AWS Encryption SDK para C with AWS KMS or running the examples that use AWS KMS. These
components do not allow you to use the AWS Encryption SDK para C with AWS KMS.
Run the following commands to download and install the dependent libraries for
the SDK de criptografia da AWS.
sudo yum update -y
sudo yum install -y openssl-devel git gcc
Depois, para fazer download e instalar a biblioteca aws-c-common, mude para seu diretório de compilações de preferência e execute os comandos a seguir.
git clone https://github.com/awslabs/aws-c-common.git
mkdir build-aws-c-common && cd build-aws-c-common
cmake -DBUILD_SHARED_LIBS=ON ../aws-c-common
make && sudo make install ; cd ..
-
Instale o SDK de criptografia da AWS.
Mude para o diretório de preferência. Depois, execute os seguintes comandos para instalar
e compilar o AWS Encryption SDK para C.
git clone https://github.com/aws/aws-encryption-sdk-c.git
mkdir build-aws-encryption-sdk-c && cd build-aws-encryption-sdk-c
cmake -DBUILD_SHARED_LIBS=ON ../aws-encryption-sdk-c
make && sudo make install ; cd ..
- macOS
-
Estas instruções instalam o SDK de criptografia da AWS em diretórios padrão em /usr/local
usando o sistema de gerenciamento de pacotes Homebrew. Se você ainda não o tiver, instale o Homebrew
e, depois, siga estas instruções.
-
Instale as bibliotecas dependentes.
O comando a seguir instala as versões necessárias do OpenSSL e do CMake.
brew install openssl@1.1 cmake
-
Instale a biblioteca aws-c-common e, opcionalmente, o AWS SDK para C++.
These instructions install the tools that the SDK de criptografia da AWS requires,
including the aws-c-common
library, which includes many of the
basic functions that the AWS Encryption SDK para C uses.
Run option
A or B, but not both.
If you plan to use a KMS
keyring, or run the examples in the AWS Encryption SDK para C
that use the Token de autenticação do AWS KMS, use installation option A. This option installs the AWS SDK para C++, which is
required for the SDK de criptografia da AWS to interact with AWS Key Management Service
(AWS KMS). Installing the SDK para C++
automatically installs the aws-c-common
library for you.
Opção A: Instalar com AWS SDK para C++ (para AWS KMS).
The AWS SDK para C++ is required to use the AWS Encryption SDK para C with AWS KMS.
It is also
required for many of the examples in this guide
and the examples in the aws-encryption-sdk-c
repository.
Run the following commands to download and install the dependent
libraries for the SDK de criptografia da AWS and SDK para C++.
When you install the SDK for
C++, the aws-c-common
is installed automatically. Do not
install it again.
git clone https://github.com/aws/aws-sdk-cpp.git
mkdir build-aws-sdk-cpp && cd build-aws-sdk-cpp
cmake -DBUILD_SHARED_LIBS=ON -DBUILD_ONLY="kms" -DENABLE_UNITY_BUILD=ON ../aws-sdk-cpp
make && sudo make install ; cd ..
Opção B: Instalar sem SDK para C++.
Use estas instruções de instalação somente se você estiver usando o AWS Encryption
SDK para C com o AWS KMS ou executando os exemplos que usam o AWS KMS. Esses componentes
não permitem usar o AWS Encryption SDK para C com o AWS KMS.
Execute os comandos a seguir para instalar a biblioteca aws-c-common
exigida pelo AWS Encryption SDK para C.
git clone https://github.com/awslabs/aws-c-common.git
mkdir build-aws-c-common && cd build-aws-c-common
cmake -DBUILD_SHARED_LIBS=ON ../aws-c-common
make && sudo make install ; cd ..
-
Instale o SDK de criptografia da AWS.
Mude para o diretório de preferência. Depois, execute os seguintes comandos para instalar
e compilar o AWS Encryption SDK para C. Esses comandos especificam o local da biblioteca
OpenSSL, pois o HomeBrew não a instala no local padrão.
git clone https://github.com/aws/aws-encryption-sdk-c.git
mkdir build-aws-encryption-sdk-c && cd build-aws-encryption-sdk-c
cmake -DBUILD_SHARED_LIBS=ON -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl\@1.1 ../aws-encryption-sdk-c
make && sudo make install ; cd ..
- Ubuntu
-
Estas instruções instalam o AWS Encryption SDK para C no Ubuntu.
-
Instale as bibliotecas dependentes.
These instructions install the tools that the SDK de criptografia da AWS requires,
including the aws-c-common
library, which includes many of the
basic functions that the AWS Encryption SDK para C uses.
Run option
A or B, but not both.
If you plan to use a KMS
keyring, or run the examples in the AWS Encryption SDK para C
that use the Token de autenticação do AWS KMS, use installation option A. This option installs the AWS SDK para C++, which is
required for the SDK de criptografia da AWS to interact with AWS Key Management Service
(AWS KMS). Installing the SDK para C++
automatically installs the aws-c-common
library for you.
Opção A: Instalar com AWS SDK para C++ (para AWS KMS).
The AWS SDK para C++ is required to use the AWS Encryption SDK para C with AWS KMS.
It is also
required for many of the examples in this guide
and the examples in the aws-encryption-sdk-c
repository.
Run the following commands to download and install the dependent
libraries for the SDK de criptografia da AWS and SDK para C++.
sudo apt-get update
sudo apt-get install -y libssl-dev cmake g++ libcurl4-openssl-dev zlib1g-dev
Depois, para fazer download e instalar o SDK para C++, mude para seu diretório de
compilações de preferência e execute os comandos a seguir. Quando você instala o SDK
para C++, o aws-c-common
é instalada automaticamente. Não a instale novamente.
Estes comandos instalam apenas os módulos do AWS KMS do SDK para C++. Se você estiver
usando outras bibliotecas no SDK para C++, omita o parâmetro -DBUILD_ONLY="kms"
, mas a instalação poderá demorar mais.
git clone https://github.com/aws/aws-sdk-cpp.git
mkdir build-aws-sdk-cpp && cd build-aws-sdk-cpp
cmake -DBUILD_SHARED_LIBS=ON -DBUILD_ONLY="kms" -DENABLE_UNITY_BUILD=ON ../aws-sdk-cpp
make && sudo make install ; cd ..
Opção B: Instalar sem SDK para C++.
Use these installation instructions only if you are not using the
AWS Encryption SDK para C with AWS KMS or running the examples that use AWS KMS. These
components do not allow you to use the AWS Encryption SDK para C with AWS KMS.
Run the following commands to download and install the dependent libraries for
the SDK de criptografia da AWS.
sudo apt-get update
sudo apt-get install -y libssl-dev cmake gcc
Depois, para fazer download e instalar a biblioteca aws-c-common, mude para seu diretório de compilações de preferência e execute os comandos a seguir.
git clone https://github.com/awslabs/aws-c-common.git
mkdir build-aws-c-common && cd build-aws-c-common
cmake -DBUILD_SHARED_LIBS=ON ../aws-c-common
make && sudo make install ; cd ..
-
Instale o SDK de criptografia da AWS.
Execute os seguintes comandos para instalar e compilar o AWS Encryption SDK para C.
git clone https://github.com/aws/aws-encryption-sdk-c.git
mkdir build-aws-encryption-sdk-c && cd build-aws-encryption-sdk-c
cmake -DBUILD_SHARED_LIBS=ON ../aws-encryption-sdk-c
make && sudo make install ; cd ..
- Windows
-
As instruções a seguir instalam o SDK de criptografia da AWS e suas dependências.
Elas requerem Visual Studio 15 ou posterior, o Git para Windows e a Biblioteca de tempo de execução C universal. Execute os comandos a seguir no x64 Native Tools Command Prompt for Visual Studio em seu diretório de instalação e compilação de preferência.
-
Instale as bibliotecas dependentes.
Estes comandos instalam o gerenciador de bibliotecas vcpkg. Depois, use o vcpkg
para instalar o curl
e o OpenSSL.
mkdir install && mkdir build && cd build
git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg && .\bootstrap-vcpkg.bat
.\vcpkg install curl:x64-windows openssl:x64-windows && cd ..
-
Instale a biblioteca aws-c-common e, opcionalmente, o AWS SDK para C++.
These instructions install the tools that the SDK de criptografia da AWS requires,
including the aws-c-common
library, which includes many of the
basic functions that the AWS Encryption SDK para C uses.
Run option
A or B, but not both.
If you plan to use a KMS
keyring, or run the examples in the AWS Encryption SDK para C
that use the Token de autenticação do AWS KMS, use installation option A. This option installs the AWS SDK para C++, which is
required for the SDK de criptografia da AWS to interact with AWS Key Management Service
(AWS KMS). Installing the SDK para C++
automatically installs the aws-c-common
library for you.
Opção A: Com AWS SDK para C++ para AWS KMS
O AWS SDK para C++ é necessário para usar o AWS Encryption SDK para C com o AWS KMS.
Ele também é necessário para muitos dos exemplos neste guia e para os exemplos no repositório aws-encryption-sdk-c
.
Os comandos a seguir instalam apenas os módulos do AWS KMS do SDK para C++. Se você
estiver usando outras bibliotecas no SDK para C++, omita o parâmetro -DBUILD_ONLY="kms"
, mas a instalação poderá demorar mais.
Execute os seguintes comandos no diretório de compilação preferencial. Quando você
instala o SDK para C++, o aws-c-common
é instalada automaticamente. Não a instale novamente.
git clone https://github.com/aws/aws-sdk-cpp.git
mkdir build-aws-sdk-cpp && cd build-aws-sdk-cpp
cmake -DCMAKE_INSTALL_PREFIX=%cd%\..\..\install -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ON -DENABLE_UNITY_BUILD=ON -DBUILD_ONLY=kms -DCMAKE_TOOLCHAIN_FILE=%cd%\..\vcpkg\scripts\buildsystems\vcpkg.cmake -G Ninja ..\aws-sdk-cpp
cmake --build . && cmake --build . --target install && cd ..
Opção B: Sem SDK para C++.
Use estas instruções de instalação somente se você estiver usando o AWS Encryption
SDK para C com o AWS KMS ou executando os exemplos que usam o AWS KMS.
Execute os seguintes comandos no diretório de compilação preferencial. Estes comandos
instalam e compilam a biblioteca aws-c-common
. Esses componentes não permitem usar o AWS Encryption SDK para C com o AWS KMS.
git clone https://github.com/awslabs/aws-c-common.git
mkdir build-aws-c-common && cd build-aws-c-common
cmake -DCMAKE_INSTALL_PREFIX=%cd%\..\..\install -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ON -DCMAKE_TOOLCHAIN_FILE=%cd%\..\vcpkg\scripts\buildsystems\vcpkg.cmake -G Ninja ..\aws-c-common
cmake --build . && cmake --build . --target install && cd ..
-
Instale o SDK de criptografia da AWS.
Mude para o diretório de preferência. Depois, execute os seguintes comandos para instalar
e compilar o AWS Encryption SDK para C.
git clone https://github.com/aws/aws-encryption-sdk-c.git
mkdir build-aws-encryption-sdk-c && cd build-aws-encryption-sdk-c
cmake -DCMAKE_INSTALL_PREFIX=%cd%\..\..\install -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ON -DCMAKE_TOOLCHAIN_FILE=%cd%\..\vcpkg\scripts\buildsystems\vcpkg.cmake -G Ninja ..\aws-encryption-sdk-c
cmake --build . && cmake --build . --target install && cd ..
Compilar e criar
Depois de instalar o SDK, você pode começar a criá-lo e usá-lo. Este guia inclui tópicos
que ajudam a entender os tokens de autenticação, escolher um token de autenticação, aprender os padrões de programação básicos e trabalhar com um exemplo simples.
Para obter ajuda para compilar e criar seus aplicativos, consulte o arquivo README no repositório do aws-encryption-sdk-c
.