상세 컨텐츠

본문 제목

[MOSS] Kerberos 인증 설정하기 1단계

MOSS

by happynuri 2008. 8. 14. 16:14

본문

오래간만의 포스팅입니다. ㅎㅎ 한동안 쉬었습니다. ^^

여튼... 교육 갔다가 온 내용이네요..

MOSS에서 하다보면 TOW HOP 이라는 문제에 부딪히게 됩니다.

그 TWO HOP 문제라는 것은 클라이언트 와 MOSS와 DB서버간의 사이에 2단계가 있죠?

그 한단계 한단계를 HOP이라고 합니다. 그런데, 클라이언트 측에서 MOSS까지 인증을 가지고 있다가

MOSS에서 DB서버로 오는 도중에 인증이 사라져서 문제가 발생할수 있다는 것이지요.

이러한 문제는 Kerberos 인증 이나 SSO으로 해결할수 있습니다.

Kerberos는 인증 설정하기가 좀 까탈 스러우나 관리가 좋다고 합니다.

설정 방법 들어 가겠습니다.

저는 서버 1대로 돌렸구요 vpc 입니다.

server명 : moss
도메인 : moss.happynuri.com
sqlserver명 : mssqlserver


1. SPN  설치

- 중앙관리
Server Farm Account
SSP Service Account
- Services
SQL Server Service Account: Account used by SQL to run all SQL services
Office SharePoint Server Search Account

- 이건 어디에 있을까요..;;
Default Content Access Account
User Profile and Properties Content Access Account
Excel Services Unattended Account
One account per application pool: This is typically three accounts; SSPAdministration,
MySite and your main 'Portal' or 'Intranet'.


command
1)
Setspn.exe -A HTTP/server.domain.local domain\serverfarmAccount
-> Setspn.exe -A HTTP/moss.happynuri.com happynuri\administrator
이렇게 사용합니다. administrator가 서버팜 계정입니다.

2)
web Application 이 host 헤더를 가지고 있을 경우 에 실행(저는 해당이 없군요)
Setspn.exe -A HTTP/%MYSITEURLFQDN% %MYSITEAPPPOOLACCOUNT%
->Setspn.exe -A HTTP/server.domain.local domain\mysiteapppoolAccount

3) 응용풀 계정도 관리하시려면 주시구요 저는 안했습니다.
Setspn.exe -A HTTP/%MYSITEURLHOST% %MYSITEAPPPOOLACCOUNT%
 Setspn.exe -A HTTP/mysite domain\mysiteapppool or
Setspn.exe -A HTTP/server domain\mysiteapppool
->Setspn.exe -A HTTP/moss domain\mysiteapppool

4)
host 헤더값이 메인 포탈이거나 인트라넷 웹어플리케이션일 경우
Setspn.exe -A HTTP/%PORTALURLFQDN% %PORTALAPPPOOLACCOUNT%
->Setspn.exe -A HTTP/portal.domain.local domain\portalapppool

5)
Setspn.exe -A HTTP/%PORTALURLHOST% %PORTALAPPPOOLACCOUNT%
->Setspn.exe -A HTTP/portal domain\portalapppool
hostName : portal 이니까 hostName이랑 host의 appPool 계정 주기

6)
Setspn.exe -A HTTP/%SSPADMINURLFQDN% %SSPADMINAPPPOOLACCOUNT%
->Setspn.exe -A HTTP/sspadmin.domain.local domain\sspadminapppool

7)
Setspn.exe -A HTTP/%SSPADMINURLHOST% %SSPADMINAPPPOOLACCOUNT%
Setspn.exe -A HTTP/sspadmin domain\sspadminapppool

위와 같은 command가 있지만 저는 딸랑 2가지 해주었습니다.
아래처럼요..

(1) SQL SPN
 setspn –a MSOLAPSvc.3/SQLServerName 도메인\계정
 (Analysis Service 서비스 계정 사용)
(2)  Sharepoint & ExcelService SPN
 setspn.exe -A HTTP/컴퓨터명.도메인.com 도메인\계정




[2] 위임 해주기
Repeat the process for each of the following
MOSS Server (Computer Account)
SQL Server (Computer Account)
FarmService (User Account)
MySiteAppPool (User Account)
SSPAdminAppPool (User Account)
PortalAppPool (User Account)

Locate the account and click 'properties'
Navigate to the 'Delegation' tab
Choose 'Trust this user/computer for delegation to any service (Kerberos)'

저는 모든 계정을 admin으로 주었으니깐 admin이랑 server 이름에만 위임 해주게 되지요.


[3]
Open Central Administration
Navigation to Application Management > Authentication Providers
Choose the web application you wish to configure from the drop-down in the top right corner (this includes the Central Administration web application)
Click on 'Default'
Set the authentication to Negotiate (Kerberos)
IISRESET

간단히 말하면, 중앙관리에서 인증공급자에서 '기본'의 인증을 kerberos로 바꾸고 iisreset 한다.

[4] kerberos 를 ssp로 enable 한다.

Open a Command Prompt and navigate to your '12\Bin' directory (normally c:\program files\common files\microsoft shared\web server extensions\12\bin) 
Run 'STSADM.exe -o SetSharedWebServiceAuthn -negotiate'

[5] Commponent Service Configuration
다양한 권한을 Component Service에 적용하기위해서 아래와 같은 절차를 수행한다.

Open Component Services on the MOSS server
Navigation to Component Services > Computers > My Computer
Click on Properties (for My Computer) > Default Properties > Default Impersonation Level = Delegate (see http://support.microsoft.com/kb/917409)
Navigate to Component Services > Computers > My Computer > DCOM Config > IIS WAMREG Admin Service
Click on Properties (for IIS WAMREG Admin Service) and navigate to the Security tab
Edit Launch and Activate Permissions
Grant all three of your application pool account 'Local Activation' permissions (see http://support.microsoft.com/kb/920783). In our example, these accounts would be domain\MySiteAppPool, domain\SSPAdminAppPool, domain\PortalAppPool


[6]
sql managed studio 에서 analysis service를 연결하고
서버에서 오른쪽 클릭하여 속성에서 보안탭에 계정을 넣어 주는데
만약, 모두가 접근하는것을 허용하려면 'authenticated users' 를 추가하면된다.
이것은 큐브로부터 오는 데이터를 동적으로 읽도록 엑세스 할수 있도록 해주는 것이다.

[7]
stsadm.exe -o set-ecssecurity -ssp %SSPNAME% -accessmodel delegation
sspname은 중앙관리에서 보면 알수 있다.

[8]
stsadm.exe -o execadmsvcjobs
iisreset

여기까지가 일반적으로 해 줄수 있는 단계 1단계 입니다.

그럼 다음으로.. ㅎㅎ

관련글 더보기

댓글 영역