1. SharePoint 중앙 관리 사이트에서 인증을 변경할 사이트를 확인합니다.
- 해당 테스트는 SharePointTest로 진행합니다.
2. 인증 공증자를 선택하고, 기본 영역을 선택합니다.
3. 익명 액세스 사용을 체크합니다.
좌측 설명을 보니,
익명 액세스가 꺼져 있는 경우 폼인증이 제대로 인증하지 못할 수 있다고 하네요.
4. FBA(양식 기반 인증) 사용을 체크합니다. Form Basic Authentication
ASP.NET 멤버 자격 공급자 이름(ASP.NET Membership provider name)
: membership 입력
ASP.NET 역할 관리자 이름(ASP.NET Role manager name)
: roleManager 입력
5. SharePoint 중앙관리 사이트의 Web.config 수정이 필요합니다.
<system.web> 하위 <membership> 영역에 아래 내용을 입력합니다.
<membership defaultProvider="AspNetSqlMembershipProvider">
<providers>
<add name="membership"
type="Microsoft.Office.Server.Security.LdapMembershipProvider, Microsoft.Office.Server, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"
server="yourserver.com"
port="389"
useSSL="false"
userDNAttribute="distinguishedName"
userNameAttribute="sAMAccountName"
userContainer="OU=UserAccounts,DC=internal,DC=yourcompany,DC=distinguishedName (of your userContainer)"
userObjectClass="person"
userFilter="(ObjectClass=person)"
scope="Subtree"
otherRequiredUserAttributes="sn,givenname,cn" />
</providers>
</membership>
<roleManager enabled="true" defaultProvider="AspNetWindowsTokenRoleProvider" >
<providers>
<add name="roleManager"
type="Microsoft.Office.Server.Security.LdapRoleProvider, Microsoft.Office.Server, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"
server="yourserver.com"
port="389"
useSSL="false"
groupContainer="DC=internal,DC=yourcompany,DC=distinguishedName (of your groupContainer)"
groupNameAttribute="cn"
groupNameAlternateSearchAttribute="samAccountName"
groupMemberAttribute="member"
userNameAttribute="sAMAccountName"
dnAttribute="distinguishedName"
groupFilter="(ObjectClass=group)"
userFilter="(ObjectClass=person)"
scope="Subtree" />
</providers>
</roleManager> |
6. SharePoint 중앙관리 사이트의 Web.config 수정이 필요합니다.
<PeoplePickerWildcards> 영역에 아래 내용을 입력합니다.
|
<add key="membership" value="*" /> <add key="roleManager" value="*" /> |
7. STS(SecurityTokenServiceApplication) 사이트의 web.config 수정이 필요합니다.
<system.web> 하위 <membership> 영역에 아래 내용을 입력합니다
중앙관리자에서 등록되었던 RoleManager의 defaultProvider는 넣지 않습니다.
<membership>
<providers>
<add name="membership"
type="Microsoft.Office.Server.Security.LdapMembershipProvider, Microsoft.Office.Server, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"
server="yourserver.com"
port="389"
useSSL="false"
userDNAttribute="distinguishedName"
userNameAttribute="sAMAccountName"
userContainer="OU=UserAccounts,DC=internal,DC=yourcompany,DC=com"
userObjectClass="person"
userFilter="(&(ObjectClass=person))"
scope="Subtree"
otherRequiredUserAttributes="sn,givenname,cn" />
</providers>
</membership>
<roleManager enabled="true" >
<providers>
<add name="rolemanager"
type="Microsoft.Office.Server.Security.LdapRoleProvider, Microsoft.Office.Server, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"
server="yourserver.com"
port="389"
useSSL="false"
groupContainer="DC=internal,DC=yourcompany,DC=com"
groupNameAttribute="cn"
groupNameAlternateSearchAttribute="samAccountName"
groupMemberAttribute="member"
userNameAttribute="sAMAccountName"
dnAttribute="distinguishedName"
groupFilter="(ObjectClass=group)"
userFilter="(ObjectClass=person)"
scope="Subtree" />
</providers>
</roleManager>
|
8. 타겟이 되는 SP사이트의 web.config 수정이 필요합니다.
<system.web> 하위 <membership> 영역에 아래 내용을 입력합니다
<add name="membership"
type="Microsoft.Office.Server.Security.LdapMembershipProvider, Microsoft.Office.Server, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"
server="yourserver.com"
port="389"
useSSL="false"
userDNAttribute="distinguishedName"
userNameAttribute="sAMAccountName"
userContainer="OU=UserAccounts,DC=internal,DC=yourcompany,DC=com"
userObjectClass="person"
userFilter="(&(ObjectClass=person))"
scope="Subtree"
otherRequiredUserAttributes="sn,givenname,cn" />
<add name="roleManager"
type="Microsoft.Office.Server.Security.LdapRoleProvider, Microsoft.Office.Server, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"
server="yourserver.com"
port="389"
useSSL="false"
groupContainer="DC=internal,DC=yourcompany,DC=com"
groupNameAttribute="cn"
groupNameAlternateSearchAttribute="samAccountName"
groupMemberAttribute="member"
userNameAttribute="sAMAccountName"
dnAttribute="distinguishedName"
groupFilter="(&(ObjectClass=group))"
userFilter="(&(ObjectClass=person))"
scope="Subtree" />
|
9. 타겟이 되는 SP사이트의 Web.config 수정이 필요합니다.
<PeoplePickerWildcards> 영역에 아래 내용을 입력합니다.
<add key="membership" value="*" /> <add key="roleManager" value="*" /> |
10. 폼 인증이 적용된 SP사이트에 접근하면 자격 증명 종류를 선택할 수 있는 페이지가 나타납니다.
[양식 인증]을 선택하면 됩니다.