'DEPRECATE'에 해당하는 글 2건

파이썬에서는 문자열을 표시하는 큰다옴표(") 나 따옴표(') 앞에 인코딩을 표시하는 u, b, r 등의 접두사가 붙는 것을 볼 수 있다. 기본은 u(UTF-8) 이며, 바이너리는 b(binary), 원시 문자열은 r(raw) 를 사용한다. 


파이썬 3.6 부터는 이스케이프 시퀀스(\n, \t, \\, ...) 가 아닌 백슬러시 문자셋을 사용하면 DeprecationWarning 를 표시한다. 현재는 deprecate 지만 곧 SyntaxError 가 될 것이다. 이스케이프 문자(\)를 포함하는 이스케이프 시퀀스, 경로나 정규 표현식 등을 표현할 때는 원시 문자열인 r 을 사용한다.


# Anti-pattern
regex = '\.png$'
 
# Best practice
regex = r'\.png$'
cs





WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,

간만에 AWS 유지보수 건이 떨어졌다.


AWS Signature Version 4 to replace AWS Signature Version 2 for signing S3 API requests

Amazon S3 will no longer support path-style API requests starting September 30th, 2020



AWS Signature Version 4 to replace AWS Signature Version 2 for signing S3 API requests


2019년 6월 24일 부터는 S3 API 요청시 Signature Version 2 방식(SigV2)의 서명으로는 통신사용이 불가능하다. 기존 코드가 SigV2 서명을 사용 중이었다면 보안이 강화된 SigV4 방식으로 코드를 수정해야 한다. 2014년 1월 이후에 런칭된 리전(서울리전 등...) 에서는 SigV4 만 지원하므로 수정할 필요가 없으나 그 전에 런칭된 리전(도쿄리전 등....) 에서는 SigV2, SigV4 모두 사용이 가능했으므로 어떤 버전의 서명을 사용중인지 체크해야 한다. 개발 프레임워크 로그에서 서명 버전을 확인할 수 있으면 좋겠지만 스프링에서는 확인할 수 없었다. 대신 AWS CloudTrail 로그나 Athena 쿼리로 조회할 수 있다.


SELECT * 

FROM s3_cloudtrail_events_db.cloudtrail_myawsexamplebucket_table

WHERE eventsource='s3.amazonaws.com'

AND json_extract_scalar(additionalEventData, '$.SignatureVersion')='SigV2'

LIMIT 5


SignatureVersion 이 SigV2 인 레코드가 있다면 SDK 를 최신버전으로 바꾸는 것으로 간단하게 해결된다.

사용 언어 확인 : https://docs.aws.amazon.com/ko_kr/AmazonS3/latest/dev/UsingAWSSDK.html

참고로 나는 AWS SDK for JAVA 1.10 버전에서 1.11 로 변경하여 해결하였다. 람다 스무개를 다바꿨다... ㅡㅡ;;



Amazon S3 will no longer support path-style API requests starting September 30th, 2020


S3 주소 지정시에 두가지 형식을 사용할 수 있었다. 


  • //s3.amazonaws.com/<bucketname>/key (Path style)
  • //<bucketname>.s3.amazonaws.com/key) (Virtual-hosted style)


버킷 이름이 도메인 호스트 자리에 들어가느냐 경로(path) 안에 들어가느냐 인데, 경로 방식을 2020년 9월 30일부터 폐기하기로 했다. 경로 방식을 사용 중이라면 미리 준비해 놓는 것이 좋다.



미리 공지주는건 좋은데, 그래도 Deprecate 난 반댈세...





WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,