Przejdź do treści

Jak naprawić – KMS Access Denied Exception | AWS Lambda

How to fix AWS Lambda KMS Access Denied Exception

Cześć, jakiś czas temu używając funkcji lambda, natrafiłem na błąd “KMS Access Denied Exception”. Było to o tyle dziwne, że wszystko działało dobrze do czasu, aż nie zwiększyłem uprawnień dla Roli IAM. Tak dobrze przeczytałeś, nadałem większe uprawnienia, a moja lambda nie mogła się uruchomić. Pomyślałem, o co chodzi. Poszperałem i okazało się, że Terraform podczas aktualizacji wywalił moją rolę IAM i utworzył ja ponownie.

Rola IAM miała taką samą nazwę, lecz moja funkcja lambda zwracała błąd:

Calling the invoke API action failed with this message: Lambda was unable to decrypt the environment variables because KMS access was denied. Please check the function's AWS KMS key settings. KMS Exception: UnrecognizedClientExceptionKMS Message: The security token included in the request is invalid

Aby rozwiązać ten błąd, musisz zresetować przydział AWS KMS dla roli wykonawczej funkcji. Brzmi skomplikowanie, ale wystarczy na chwilę przypisać inną rolę IAM. W funkcji lambda możesz na chwilę przypisać inną rolę IAM i zapisać zmiany, a potem ponownie dodać rolę IAM, która była na początki i ponownie zapisać zmiany. I to wszystko.

W moim przypadku to pomogło. Jeśli chcesz się dowiedzieć więcej, to przygotowałem tutorial wideo, w którym wszystko opisuję krok po kroku i podaję 3 sposoby na naprawę tego błędu.

KMS Access Denied Exception – How to fix AWS Lambda

Jeśli zainteresował cię artykuł, to może zainteresują cię także pozostałe artykuły z kategorii AWS.

Porównanie Grup Bezpieczeństwa i List Kontroli Dostępu do Sieci w AWS
Jak odczytać i zapisać plik na S3 używając funkcji lambda i boto3

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *