정리중/C# & .NET & Web
[ASP.NET] 응용 프로그램 간 폼 인증
위즈
2006. 4. 6. 19:20
여러 응용 프로그램 간에 공유되는 폼 인증을 구성하려면 공유 폼 인증에 참여하는 모든 응용 프로그램에 대해 값이 같도록 forms 및 machineKey 구성 섹션에 여러 특성을 설정합니다.
다음 예제에서는 Web.config 파일의 Authentication 섹션을 보여 줍니다.
다른 설명이 없는 한 name, protection, path, validationKey 및 decryptionKey 특성은 모든 응용 프로그램에서 같아야 합니다.
마찬가지로 쿠키 데이터에 사용되는 암호화 및 유효성 검사 키와 암호화 체계도 정확히 일치해야 합니다. 이러한 설정이 일치하지 않으면 쿠키를 공유할 수 없습니다
즉, 두 응용 프로그램의 Timeout 특성이 서로 다르면 각 쿠키가 처음 발급되었을 때 설정한 만료 날짜 및 시간이 해당 쿠키의 전체 수명 기간 동안 유지됩니다.
쿠키가 업데이트되면 새로운 만료 기한을 계산하기 위해 쿠키의 원래 만료 기한이 사용됩니다. Timeout 구성 값은 처음에 쿠키를 만들 때만 사용됩니다.
다음 예제에서는 Web.config 파일의 Authentication 섹션을 보여 줍니다.
다른 설명이 없는 한 name, protection, path, validationKey 및 decryptionKey 특성은 모든 응용 프로그램에서 같아야 합니다.
마찬가지로 쿠키 데이터에 사용되는 암호화 및 유효성 검사 키와 암호화 체계도 정확히 일치해야 합니다. 이러한 설정이 일치하지 않으면 쿠키를 공유할 수 없습니다
<configuration>쿠키가 발급된 후에는 쿠키 자체의 Expires 값에 따라 쿠키 만료가 추적됩니다.
<system.web>
<authentication mode="Forms" >
<!-- The name, protection, and path attributes must match
exactly in each Web.config file. -->
<forms loginUrl="login.aspx"
name=".ASPXFORMSAUTH"
protection="All"
path="/"
timeout="30" />
</authentication> <!-- Validation and decryption keys must exactly match and cannot
be set to "AutoGenerate". The validation algorithm must also
be the same. -->
<machineKey
validationKey="C50B3C89CB21F4F1422FF158A...C529AD3CABE"
decryptionKey="8A9BE8FD67AF.....98CFEA50DD3D3799C77AF2B72F"
validation="SHA1" />
</system.web>
</configuration>
즉, 두 응용 프로그램의 Timeout 특성이 서로 다르면 각 쿠키가 처음 발급되었을 때 설정한 만료 날짜 및 시간이 해당 쿠키의 전체 수명 기간 동안 유지됩니다.
쿠키가 업데이트되면 새로운 만료 기한을 계산하기 위해 쿠키의 원래 만료 기한이 사용됩니다. Timeout 구성 값은 처음에 쿠키를 만들 때만 사용됩니다.