#amazon-web-services #powershell #encryption #command-line-interface #aws-kms
#amazon-веб-сервисы #powershell #шифрование #интерфейс командной строки #amazon-kms
Вопрос:
Я следил за примером документации AWS для шифрования конвертов, в котором есть команда для PowerShell. Команда не работает на моем компьютере, поэтому мне нужен кто-то, кто поможет мне выяснить, почему. Ниже приведена ссылка на документацию;
https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/crypto-cli-examples.html
Ниже приведена ошибка, которую я получаю, когда следую инструкциям в документации;
PS C:> $CmkArn = arn: aws: kms: us-west-1:40414889442: ключ /c6b58e8e-f890-4d97-a417-f5bba5e6af89 arn: aws: kms: us-west-1:40414889442: ключ/c6b58e8e-f890-4d97-a417- f5bba5e6af89: Термин ‘arn: aws:kms: us-west-1:404148889442:key/c6b58e8e-f890-4d97-a417-f5bba5e6af89’ не распознается как имя командлета, функции, файла сценария или действующей программы. Проверьте написание имени или, если был указан путь, убедитесь, что путь указан правильно, и повторите попытку. В строке: 1 символ: 11
- $CmkArn = arn: aws: kms: us-west-1:404148889442: ключ/c6b58e8e-f890-4d97-a …
-
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Информация о категории: ObjectNotFound: (arn: aws:kms: us-…17-f5bba5e6af89:Строка) [], исключение CommandNotFoundException
- FullyQualifiedErrorId : CommandNotFoundException
Ответ №1:
Синтаксис в их примере неправильный, вот как это должно быть написано:
# To run this example, replace the fictitious key ARN with a valid value.
PS C:> $CmkArn = "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
PS C:> aws-encryption-cli --encrypt `
--input Hello.txt `
--master-keys key=$CmkArn `
--metadata-output $homeMetadata.txt `
--encryption-context purpose=test `
--output .
Фиктивный ARN нуждается в кавычках вокруг него.
Комментарии:
1. Похоже, это было исправлено в примере, корректен ли сейчас официальный пример?
2. @Jones Да, мне кажется, это правильно, одинарные или двойные кавычки — это нормально.