SharePoint 솔루션 배포

1. 솔루션 취소
stsadm -o retractsolution -name LGD.CA.CAUDOCK.wsp -url http://jincompy/ORG/55400 -immediate

2. 솔루션 삭제
stsadm -o deletesolution -name LGD.CA.CAUDOCK.wsp

3. 솔루션 추가
stsadm -o addsolution -filename LGD.CA.CAUDOCK.wsp

4. 솔루션 배포
stsadm -o deploysolution -name LGD.CA.CAUDOCK.wsp -url http://jincompy -immediate -force -allowGacDeployment

크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by jincaesar

2014/02/28 10:46 2014/02/28 10:46
,
Response
No Trackback , No Comment
RSS :
http://jincaesar.maru.net/tc/rss/response/132

SharePoint RegistrationId

SharePoint RegistrationId

InvalidType = -1
GenericList = 100
DocumentLibrary = 101
Survey = 102
Links = 103
Announcements = 104
Contacts = 105
Events = 106
Tasks = 107
DiscussionBoard = 108
PictureLibrary = 109
DataSources = 110
WebTemplateCatalog = 111
UserInformation = 112
WebPartCatalog = 113
ListTemplateCatalog = 114
XMLForm = 115
MasterPageCatalog = 116
NoCodeWorkflows = 117
WorkflowProcess = 118
WebPageLibrary = 119
CustomGrid = 120
DataConnectionLibrary = 130
WorkflowHistory = 140
GanttTasks = 150
Meetings = 200
Agenda = 201
MeetingUser = 202
Decision = 204
MeetingObjective = 207
TextBox = 210
ThingsToBring = 211
HomePageLibrary = 212
Posts = 301
Comments = 302
Categories = 303
Pages = 850 (thanks to Anders Jacobsen for this one)
IssueTracking = 1100
AdminTasks = 1200

Thanks Mike Smith - http://techtrainingnotes.blogspot.com/2 ··· ate.html

크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by jincaesar

2013/04/16 16:21 2013/04/16 16:21
,
Response
No Trackback , No Comment
RSS :
http://jincaesar.maru.net/tc/rss/response/117

SPDocumentLibrary Class

SPDocumentLibrary Class
MSDN: Represents a document library in Microsoft SharePoint Foundation.
Microsoft SharePoint Foundation에서의 도큐먼트 라이브러리

Inheritance Hierachy
Namespace: Microsoft.SharePoint
Assembly: Microsoft.SharePoint (in Microsoft.SharePoint.dll)
Available in Sandboxed Solutions: Yes

Syntax
[SubsetCallableTypeAttribute]
public class SPDocumentLibrary : SPList

Remarks
다음 예제와 같이SPDocumentLibrary 개체를 구하기 위해서 SPList를 문서라이브러리로 형변환해주어야 한다.
ex) SPDocumentLibrary spDL = (SPDocumentLibrary)oList;
using (SPSite site = new SPSite(SiteID))
{
    using (SPWeb web = site.OpenWeb(WebID))
    {
        web.AllowUnsafeUpdates = true;

        SPList list = web.Lists[this.ListID];

        if (list.BaseType == SPBaseType.DocumentLibrary)
        {
            // DocumentLibrary를 찾기 위해 SPList를 형 변환한다.
            SPDocumentLibrary spDL = list as SPDocumentLibrary;

            SPFolder parentFolder = list.RootFolder; // 추후 부모 폴더를 넣어야 한다.
            SPUser user = SPContext.Current.Web.CurrentUser;
            SPContentTypeId spCTId = new SPContentTypeId(Constants.DocumentSetContentTypeID);

          // DocumentSet 만들 때 속성을 HashTable로 넘겨준다.
          Hashtable properties = new Hashtable();
          properties.Add("FileLeafRef", docName);     // 제목
            properties.Add("DocExpires", docExpires);   // 보전연한
            properties.Add("DocGrade", docGrade);       // 문서등급
            properties.Add("IsInherit", strIsInherit);  // 상위권한상속여부

            //Create the new Document Set object.
          DocumentSet.Create(parentFolder, docName, spCTId, properties, true, user);
        }                       

        web.AllowUnsafeUpdates = false;
    }
}

oDocumentLibrary.IsCatalog: 문서 라이브러리가 갤러리와 같은 Site Templates, List Template, Web Parts or Master Pages 와 같은 갤러리인지 여부를 나타내는 Boolean 값을 가져온다.
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by jincaesar

2012/04/19 19:34 2012/04/19 19:34
,
Response
No Trackback , No Comment
RSS :
http://jincaesar.maru.net/tc/rss/response/98

[SharePoint 2010] SPSite Class

SPSite Class
MSDN: The SPSite class represents a collection of sites on a virtual server, including a top-level site and all its subsites.
Each SPSite object, or site collection, is represented within an SPSiteCollection object that consists of the collection of all site collections on the virtual server.
SPSite 클래스는 최상위 사이트와 모든 하위 사이트를 포함하여 가상 서버에 사이트 모음을 나타냅니다.
각 SPSite 개체, 또는 사이트 모음은 가상 서버의 모든 사이트 컬렉션의 컬렉션으로 구성되어 SPSiteCollection 개체 내에 표시됩니다.

System.Object
  Microsoft.SharePoint.SPSite

Public Constructors
SPSite(String):
문자열로 지정된 절대 URL에 해당하는 SPSite 클래스 기반의 새 인스턴스를 초기화합니다.
Remarks
SPSite 생성자에 전달되는 URL이 정확히 사이트 컬렉션 URL과 일치될 필요는 없다.
예를 들어 http://Server_Name/sites/Site_Name/Subsite_Name/default.aspx 인 사이트 컬렉션이 있으면 http://Server_Name/sites/Site_Name까지만 적어도 상관없다는 뜻 같다.

SPSite siteCollection = new SPSite("http://Server_Name/Sites/Site_Name/");

SPSite(Guid): 사이트 모음의 GUID에 해당하는 SPSite 클래스 기반의 새 인스턴스를 초기화합니다.

SPContext.Current Property
MSDN: Gets the context of the current HTTP request in Microsoft SharePoint Foundation
현재 HTTP 요청의 Context를 가져옵니다.
Namespacee: Microsoft.SharePoint
Assembly: Microsoft.SharePoint (in Microsoft.SharePoint.dll)
Available in Sandboxed Solutions: Yes

Remarks
Current 속성은 SPContext내에 다양한 개체에 액세스하는 속성을 제공합니다.
예를 들어, 현재 목록(Current List),  Web Site, Site Colection, Web Application 같은 개체에 액세스하는 속성을 제공한다.

Examples
SPWebApplication oWebApplicationCurrent = SPContext.Current.Site.WebApplication;
SPSiteCollection collSites = oWebApplicationCurrent.Sites;

foreach (SPSite oSite in collSites)
{
   Response.Write(oSite.Url + "<BR>");
   oSite.Dispose();
}




크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by jincaesar

2012/04/16 15:07 2012/04/16 15:07
, ,
Response
No Trackback , No Comment
RSS :
http://jincaesar.maru.net/tc/rss/response/93

[SharePoint 2010] Create a Site Collection

Site Collection(사이트 모음) 만들기

사이트 모음은 사용 권한 등의 소유자 및 공유 관리 설정이 동일한 웹사이트 그룹입니다.사이트 모음을 만들면 해당 사이트 모음에 최상위 사이트가 자동으로 만들어집니다.
그러면 최상위 사이트 아래에 하나 이상의 하위 사이트를 만들 수 있습니다.

사이트 모음은 웹 응용 프로그램 내에 있어야 합니다.
기존 웹 응용 프로그램을 기반으로 사이트 모음을 만들 수도 있고, 웹 응용 프로그램을 만든 다음 해당 응용프로그램 내에 사이트 모음을 만들 수도 있습니다.

웹 응용 프로그램이 다른 프로젝트 또는 단일 팀에서 사용되는 경우 여러 사이트를 관리해야 하는 부담이 없도록 사이트 모음을 하나만 사용합니다.
그러나 복잡한 솔루션의 경우에는 사이트 모음을 여러 개 사용해야 콘텐츠를 정리하고 각 사이트에 대한 사용 권한을 관리하기가 편리합니다.
예를 들어 사이트 모음 간의 탐색이 기본 제공되지 않는 경우 사이트 모음을 여러 개 사용하면 사이트 콘텐츠에 대한 보안을 한층 강화할 수 있습니다.

SharePoint에서는 공동 작업, 모임, 회사, 게시 및 사용자 지정과 같은 범주의 사이트 서식 파을을 제공합니다.
사이트 모음을 만들 때는 사이트에서 수행하는 작업과 일치하는 서식 파일을 선택합니다.
예를 들어 읽기 권한자 수가 참가자 수보다 훨씬 더 많은 대규모 인트라넷 사이트를 만들려는 경우에는 게시 포털 서식 파일을 선택합니다.

사이트 모음(Site Collection)을 만들기 전에 다음 필수 구성요소가 있는지 확인합니다.
    - 사이트 모음을 만들 웹 응용 프로그램
    - 할당량 지정 서식 파일(사이트 모음에 저장할 수 있는 데이터의 양 및 사이트 모음 관리자에게 전자 메일 알림을 보내도록 하는 저장소 크기를 지정하는 값을 정의하려는 경우)
    - 사용자 지정 관리 와일드카드 경록(루트 드렉터리 또는 /사이트/디렉터리가 아닌 다른 곳에 사이트 모음을 만들려는 경우)

중앙 관리를 사용하여 사이트 모음(Site Collection) 만들기
일반적으로 중앙 관리 웹 사이트를 사용하여 독립 실행형 배포에 사이트 모음을 만듭니다.

1. 다음과 같은 관리 자격 증명이 있는지 확인합니다.
     - 사이트 모음을 만들려면 SharePoint 중앙 관리 웹 사이트를 실행하는 컴퓨터에서 Farm Administrators SharePoint 그룹의 구성원이어야 합니다.

2. 중앙 관리 웹 사이트의 응용 프로그램 관리 섹션에서 사이트 모음 만들기를 클릭합니다.
    중앙 관리 > 응용 프로그램 관리 > 사이트 모음 만들기 클릭
사이트 모델 요소

3. 사이트 모음을 만들 웹 응용 프로그램을 선택하지 않은 경우 사이트 모음 만들기 페이지에 있는 웹 응용프로그램 섹션의 웹 응용 프로그램 메뉴에서 웹 응용 프로그램 변경을 클릭하고 사이트 모음을 만들 웹 응용 프로그램을 클릭합니다.
사이트 모음 만들기

4. 제목 및 설명 섹션에서 사이트 모음의 제목과 설명을 입력합니다.

5. 웹 사이트 주소 섹션에서 URL에 사용할 경로(예:/사이트/등의 와일드카드 포함 경로 또는 /등의 루트 디렉터리)를 선택합니다.
와일드카드 포함 경로를 선택하는 경우 사이트 URL에서 사용할 사이트

사이트 모음 만들기

6. 서식 파일 선택 섹션의 서식 파일 선택 목록에서 사이트 모음의 최상위 사이트에 사용할 서식 파일을 선택하거나, 사용자 지정 탭을 클릭하여 빈 사이트를 만들고 나중에 서식 파일을 적용합니다.

7. 주 사이트 모음 관리자 섹션에 사이트 모음 관리자로 지정할 사용자의 사용자 이름을 도메인\사용자 이름 형식으로 입력합니다.

사이트 모음 만들기

8. 보조 사이트 모음 관리자 섹션에서 사이트 모음의 보조 관리자로 사용할 사용자 이름을 입력합니다.
주 사이트 모음 관리자가 없는 경우 다른 누군가가 사이트 모음을 관리할 수 있도록 하려면 보조 사이트 모음 관리자를 지정하는 것이 가장 좋습니다.

9. 할당량을 사용하여 사이트 모음의 저장소를 관리하는 경우 할당량 지정 서식 파일 섹션의 할당량 지정 서식 파일 선택 목록에서 서식 파일을 클릭합니다.

10. 확인을 클릭합니다.

사이트 모음 만들기
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by jincaesar

2012/04/16 14:05 2012/04/16 14:05
, ,
Response
No Trackback , No Comment
RSS :
http://jincaesar.maru.net/tc/rss/response/92

[SharePoint 2010] SPSecurity Class

SPSecurity Class
MSDN: Provides static security management properties and methods.
정적 보안 관리 속성과 메서드를 제공합니다.

▶ 상속 계층 구조
System.Object
   Microsoft.SharePoint.SPSecurity

Namespace: Microsoft.SharePoint
Assembly: Microsoft.SharePoint(in Microsoft.SharePoint.dll)
Sandboxed Solutions 사용 가능 여부: 불가

▶ 구문
public static class SPSecurity

▶ 스레드로부터의 안정성
이 형식의 모든 공용 static 멤버는 스레드로부터 안전합니다.
인터페이스 멤버는 스레드로부터 안전하지 않습니다.

▶ Methods
RunWithElevatedPrivileges:
Executes the specified method with Full Control rights even if the user does not otherwise have Full Control.
사용자가 별도로 모든 권한이 없는 경우에도 모든 권한으로 지정된 메서드를 실행.

사족: 처음엔 이걸 왜 쓰는지 이해를 못했다.
근데 MSDN 찾아보고 아.. 글쿠낭.. 이해했다.
조회권한만이 있는 홍길동이라는 사람이 조회 가능한 문서를 열람했을 때 그 문서의 조회권한이 있는 사용자 리스트를 뿌려줄 경우 SPRoleAssignment에서 권한이 없어 액세스 거부가 된다.
이 때 홍길동의 권한보다 상위의 권한으로 그 문서의 조회 권한이 있는 사용자를 조회하여 뿌려주기 위해 임의로 모든 권한으로 지정된 메서드를 실행하기 위해 RunWithElevatedPrivileges 메서드를 사용하는 것이다.

Namespace: Microsoft.SharePoint
Assembly: Microsoft.SharePoint(in Microsoft.SharePoint.dll)
Sandboxed Solutions 사용 가능 여부: 불가

▶ Examples: The next example shows the syntax that is required to define an anonymous method in the call to RunWithElevatedPrivileges.
다음 예제는 RunWithElevatedPrivileges에 대한 호출에서 익명 메서드를 정의하는 데 필요한 구문을 보여줍니다.
SPSecurity.RunWithElevatedPrivileges(delegate()
{
    using (SPSite site = new SPSite("http://jincompy/IW"))
    {
}
});



크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by jincaesar

2012/04/16 10:18 2012/04/16 10:18
,
Response
No Trackback , No Comment
RSS :
http://jincaesar.maru.net/tc/rss/response/90

폼 인증

LDAP 폼 인증하는 것을 구성해보라고 한다.

뭘.. 어케?

LDAP을 이용한 폼 인증인가??
Wiki를 찾아보니 경량 디렉터리 액세스 프로토콜이라고한다... 이게 모?...=_=;;
디렉터리 서비스를 조회하고 수정하는 응용 프로토콜이다.

결국 AD를 이용한 폼 인증이란 소리인가..

어쨌건 구글링에 들어갔다..

처음 찾은 한글페이지.. =_=;;
류경석님 감사합니다
http://teamplace.blogspot.com/2010/07/s ··· _05.html

작업하다 안되서.. 찾은 MS 페이지.. =_=;;;;;
http://technet.microsoft.com/ko-kr/libr ··· section1

어쨌건.. 둘다 참고해서.. 대충 꾸몄다..

▶  중앙 관리를 사용하여 LDAP 공급자를 사용하도록 폼 기반 웹 응용프로그램 구성
1. 중앙 관리 > 웹 응용 프로그램 관리 클릭

중앙 관리

2. 리본 메뉴 > 새로 만들기 클릭 웹 응용 프로그램
3. 클레임 기반 인증 선택 새 웹 응용 프로그램 만들기 - 인증
4. 기존 IIS 웹 사이트 사용해도 되고.. 새 IIS 웹 사이트 만들기 해도 되고..
난 새 IIS 웹 사이트 만들기로 작업함.. 새 웹 응용 프로그램 만들기 - IIS 웹 사이트
5. FBA(양식 기반 인증) 사용 체크
ASP.NET 멤버 자격 공급자 이름: 대충 줘도 된다.
ASP.NET 역할 관리자 이름: 마찬가지로 그까이꺼 대충.. 겹치지만 않게 준다.
설정이 다 됐으면 확인 버튼 클릭 새 웹 응용 프로그램 만들기 - 클레임 인증 유형
6. 조금 시간이 지나면 응용 프로그램이 만들어짐 팝업창이 뜬다..
여기서 [사이트 모음 만들기]를 클릭한다. 응용 프로그램이 만들어짐
7. 제목은 대충.. 설명도 대충..
주 사이트 모음 관리자: 사용자이름: Administrator 계정을 선택한다. 사이트 모음 만들기
8. 아래 그림은 좀 잘못 설정해서 나온 건뎅.. 제대로 설정하면
Administrator로 검색했을 경우
아래와 같은
사용자: Active Directory
사용자: 양식 인증 Administrator 2개가 나온다
그러면 양식 인증을 선택하고 확인 버튼을 클릭한다. 사용자 선택
9. 최상위 사이트 만들기 완료 창~ 최상위 사이트 만들기 완료
10. web.config를 설정해야한다..
  MS사이트에 잘 나와있다.

A. 중앙 관리의 web.config
   
      
        
          
        
      
      
        
          
        
      
    

B. Security Token Service
  
    
      
        
      
    
    
      
        
        
    
  

C. 웹 응용 프로그램
대충 껴 맞추면 된다.. =_=;;
  
    
      
        
        
      
    
    
      
        
        
      
    
  


아래는 사용자 설정해주는 부분..

아 귀차나서.. 이쯤에서 끗~~~

사용자정책
사용자추가
사용자추가
사용자추가
사용자추가
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by jincaesar

2012/04/03 15:00 2012/04/03 15:00
,
Response
No Trackback , No Comment
RSS :
http://jincaesar.maru.net/tc/rss/response/88

Active Directory 암호정책

AD를 처음 접한 사람들 중 대부분... 아니.. 나 뿐인가 =_=;;
42일이 지나면 암호를 변경해야 한다는 메시지가 뜬다..
SharePoint는 암호를 바꾸면 설정을 바꿔 줘야하는데..
아직 이 방법은 모른다.. =_=;;;

그래서.. 암호 정책에서 암호를 바꿔주는게 가장 편하다고 생각했다.

그러나 막상 암호를 변경하려고 [로컬 보안 정책] > [계정 정책] > [암호 정책] 에서
[최대 암호 사용 기간]을 변경하려고 보면 바꿀 수가 없다.. ㅠㅜ

찾다가.. 겨우 [그룹 정책 관리] (gpmc.msc) 에서 변경해 주면 된다는 걸 알았다.

1. 실행(Windows Key + R) > gpmc.msc

2. 그룹 정책 관리 창이 뜨면 트리에서 [그룹 정책 관리] > [포리스트] > [도메인] >  [자신의 도메인] > [Default Domain Policy]  오른쪽 버튼 클릭 [편집] 선택

3. 그룹 정책 관리 편집기 창이 뜬다.
트리에서 [컴퓨터 구성] > [정책] > [Windows 설정] > [보안 설정] > [계정 정책] > [암호 정책] 클릭

4.  정책에서 설정해주면 끝~~


크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by jincaesar

2012/02/22 10:14 2012/02/22 10:14
, ,
Response
No Trackback , No Comment
RSS :
http://jincaesar.maru.net/tc/rss/response/85

샌드박스 솔루션과 팜 솔루션의 차이점

http://msdn.microsoft.com/ko-kr/library/ee361616.aspx

샌드박스 솔루션과 팜 솔루션의 차이점

Visual Studio 2010


SharePoint 솔루션을 컴파일하면 솔루션이 서버에 배포되고 솔루션을 디버깅하기 위해 디버거가 연결된다.
솔루션을 디버깅하는 데 사용되는 프로세스는 샌드박스가 적용된 솔루션 속성의 설정(샌드박스가 적용된 솔루션 또는 팜 솔루션)에 따라 다르다.

(잡담)
결국 차이점은 솔루션 디버깅하는 프로세스가 다르다는거 아냐?? =_=;;
말이 어려버.. ㅠㅜ

팜 솔루션

IIS 작업자 프로세스(w3wp.exe)에서 호스팅되는 팜 솔루션은 전체 팜에 영향을 줄 수 있는 코드를 실행한다.
샌드박스가 적용된 솔루션 속성이 "팜 솔루션"으로 설정된 SharePoint 프로젝트를 디버깅하면 IIS 작업자 프로세스에서 잠근 파일을 해제하기 위해 SharePoint가 기능을 제거하거나 배포하기 전에 시스템의 IIS 응용 프로그램 풀이 재생된다.
이 경우 SharePoint 프로젝트의 사이트 URL에 서비스를 제공하는 IIS 응용 프로그램 풀만 재생된다.

(잡담)
팜 솔루션은 전체 팜에 영향을 주기 때문에..  디버깅시 IIS를 reset한다는 얘기인가..
배포를 하면 자동으로 IIS를 reset하기 땜시.. 시간이 쫌 걸리고..
dll을 갱신하는 경우에는 iis를 수동으로 reset해야하고..
아놔.. 한국말 디따 어려버.. ㅠㅠ

샌드박스가 적용된 솔루션

SharePoint 사용자 코드 솔루션 작업자 프로세스(SPUCWorkerProcess.exe)에서 호스팅되는 샌드박스가 적용된 솔루션은 해당 솔루션의 사이트 컬렉션에만 영향을 줄 수 있는 코드를 실행한다.
샌드박스가 적용된 솔루션은 IIS 작업자 프로세스에서 실행되지 않기 때문에 IIS 응용 프로그램 풀 또는 IIS 서버를 다시 시작하면 안된다.
Visual Studiio에서는 SharePoint의 SPUserCodeV4 서비스에서 자동으로 트리거하고 제어하는 SPUCWorkProcess 프로세스에 디버거를 연결한다.
솔루션의 최신 버전을 로드하기 위해 SPUCWorkerProcess 프로세스를 재생할 필요는 없다.

(잡담)
팜 솔루션은 IIS를 reset하지만.. 샌드박스는 사이트 컬렉션만 영향을 끼치기 땜시 SPUserCodeV4 서비스를 재생하면 된다는 얘기인가..
하여간 프로세스가 다르다는 얘기군.. =_=;

두가지 솔루션 형식

또한 Visual Studio에서는 두 가지 솔루션 형식에 대해 클라이언트 쪽 스크립트 디버깅을 사용할 수 있도록 디버거를 브라우저에 연결한다.
이를 위해 Visual Studio에서는 스크립트 디버깅 엔진을 사용한다.
스크립트 디버깅을 사용하려면 메시지가 표시될 때 기본 브라우저 설정을 변경해야 한다.

Visual Studio에서는 현재 사이트를 실행 중인 w3wp 또는 SPUCWorkerProcess 프로세스에만 디버거를 연결한다.
또한 Visual Studio에서는 관리되는 COM Plus와 워크플로 디버깅 엔진을 연결한다.


크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by jincaesar

2011/09/19 17:50 2011/09/19 17:50
Response
No Trackback , No Comment
RSS :
http://jincaesar.maru.net/tc/rss/response/71