2011-09-14 4 views
3

Google 프로덕션 환경에는 세 개의로드 균형 조정 서버가 있습니다. 각 서버에는 IIS에 9 개의 사이트가 있습니다. 각 사이트에는 1 ~ 15 개의 서로 다른 앱이 있습니다.서버 대 사이트 수준 vs. 앱 수준의 validationKey 설정

세 서버 모두에서 적절한 암호화/암호 해독을 유지하려면 해당 앱에 대해 동일한 validationKey 및 decryptionKey를 사용해야합니다. Web.config의 에서 사이트 수준 - - machine.config에 의 서버 레벨 - 의 web.config에서 응용 프로그램 수준

각 수준에서 설정하지만 장단점이 분명히있다 :이 세 가지 수준에서 설정할 수 있습니다 누군가가 서버 대 사이트 대 앱에서 특정 이유를 제공 할 수 있는지 궁금합니다. machineKey Web Farm Deployment Considerations 섹션에서

는 추천 광고 당신이 배치, 에 동일한 서버를 다른 응용 프로그램에서 응용 프로그램을 분리하려면

이 각 각 응용 프로그램의 Web.config 파일에서 서버.

validationKey는 3 개의 서버에서 100 개의 서로 다른 응용 프로그램에 대해 서로 다른 키를 사용하는 것을 정당화하기에 충분한 위협 벡터입니까? 내가 알지. 얼마나 위험을 감수하고 싶습니까? 어떤 업계에 속해 있습니까? 누군가 내 데이터로 무엇을하기를 원합니까?

당연히 나는 새로운 사이트 나 앱을 추가 할 때 게시판 전반에 걸쳐 우리의 기반을 다룰 수 있도록하기 위해 결국 3 가지 레벨로 모두 넣을 것이라고 생각합니다. 그러나 나는 회귀 테스트 노력을 정말로 기대하지 않고있다.

덕분에, 매트

답변

0

약간 대부분 개인이 설정 파일 내에서 "노이즈"이라고 생각하지만, 기능적으로 동일하다 (물론, 적절하게) 수준에서 구성을 저장하는 것과 관련, 기호에 요약된다.

예를 들어, 동일한 서버의 모든 응용 프로그램에서 공유되는 설정이있는 경우 machine.config에있는 모든 web.config에서이를 반복하지 않고 machine.config를 사용하는 것이 좋습니다.

내 의견으로는 인증/암호화 키가있는 곳이 web.config 파일에 있습니다. 동일한 서버의 여러 웹 응용 프로그램 (특히 관련이없는 인증 수준의 웹 응용 프로그램)을 공유하고 싶지는 않습니다. 발행물).

사용 가능한 모든 수준에서 동일한 설정을 지정하면 "더 나은 단어가 부족한 경우"라는 바보입니다. 하지마. 당신은 미래에 (당신이 떠날 때) 어떤 정비원을 혼란스럽게 할 것이며, 여분의 것과 "불필요한"것은 종종 남용에 대한 초대입니다.

관련 문제