Question 138
You are designing a SharePoint 2010 application that will deploy a Web Part assembly. You need to specify which element to add to the solution manifest (manifest.xml) to meet the following requirements:
.The Web Part must retrieve data from an external database but must not require a custom access policy.
.The company’s security policies specify that all SharePoint Web applications must run at minimal trust.
Which approach should you recommend?
A. Add a DwpFile element and an Assembly element specifying a Deployment Target of GlobalAssemblyCache.
B. Add a DwpFile element and an Assembly element specifying a Deployment Target of Web Application.
C. Add a Safe Control element within an Assembly element specifying a Deployment Target of
GlobalAssemblyCache.
D. Add a Safe Control element within an Assembly element specifying a Deployment Target of Web Application.web
解析:
你開發了一個Sharepoint2010應用程序以部署一個Web Part程序集,你須要說明哪一個元素能夠被添加到解決方案的manifest.xml文件中去,要求以下:
要求1. 此Web Part能夠不須要用戶訪問策略的支持去從外部數據庫獲取數據
要求2. 公司的安全策略要求全部的Sharepoint Web Application必須運行在最小的信任級別。
你該採用何種方式以知足上述要求呢?
此題的備選項涉及解決方案指令清單(manifest.xml)中的DwpFile元素, Assembly元素與Safe Control元素。
1. DwpFile元素 :指定解決方案中要包含的 Web 部件文件(.dwp 或 .webpart)。這個元素貌似與本題的安全訪問策略方面的需求沒什麼關係。它僅用來引入相關文件。
2. Assembly元素: 指定與解決方案的代碼訪問安全策略關聯的程序集。此元素中有DeploymentTarget屬性:爲可選屬性。將程序集複製到由 DeploymentTarget 屬性(對於 Web 應用程序)或全局程序集緩存(對於服務器場)指定的目標。可能的值:
GlobalAssemblyCache 若是程序集是一種場功能,則將其複製到全局程序集緩存。一般,對於已安裝到 GAC 的代碼,沒有任何代碼訪問安全限制;所以,您將沒法從深度防護安全中受益。若是將 Web 部件存儲在 GAC 中,則可以在衆多的應用程序之間共享 Web 部件。組件一般存儲在 C:\WINNT\Assembly 中。
WebApplication 若是程序集是一種 Web 應用程序功能,則將其複製到虛擬服務器的 bin 目錄。這是一個部分可信的位置。默認狀況下,從該目錄運行的代碼具備較低級別的代碼訪問安全權限。管理員必須明確提高授予 Web 部件的權限,它才能正常工做。因爲存在這種控制和深度防護,管理員更但願程序集在 Bin 目錄中運行,並使用已知的必需代碼訪問安全權限集。此外,Bin 目錄也是特定於 Web 應用程序的。這樣就可以隔離特定於 Web 應用程序的代碼。默認狀況下,Bin 目錄的代碼訪問安全權限很是低,只容許執行代碼。幾乎能夠確定的是,必須提高這些權限,才能使程序集正常運行。數據庫
3. Safe Control元素:在解決方案的安全控件列表中添加或刪除控件程序集。SharePoint 產品和技術的基本假定是「不受信任的用戶」能夠在運行SharePoint Server 的系統內上載和建立 .aspx 頁。雖然應阻止這些用戶在 .aspx 頁內添加服務器端代碼,但應提供一個可供這些不受信任用戶使用的已批准控件的列表。在SharePoint Server 中,此列表由安全控件列表提供。
安全控件列表是一個包含特定於 SharePoint 網站的控件和 Web 部件的列表,服務器管理員能夠指定在網站內的任何 .aspx 頁上調用這些控件和 Web 部件是安全的。
根據本題的要求,本題明顯要用到與安全控件列表相關的選項,即Safe Control元素選項。而根據要求1, 此Web Part能夠不須要用戶訪問策略的支持去從外部數據庫獲取數據,若是部署到Bin 目錄下,則因爲Bin 目錄的代碼訪問安全權限很是低,不足以讓你去從外部數據庫獲取數據。並且根據要求2, 公司的安全策略要求全部的Sharepoint Web Application必須運行在最小的信任級別。這就只有把Web Part部署到GAC中以突破Web Application的這個限制。綜合起來,本題就須要滿組Safe Control元素加上Assembly元素的GlobalAssemblyCache設置 。緩存
所以本題答案應該選 C 安全
參考
http://msdn.microsoft.com/en-us/library/ms442108.aspx
http://technet.microsoft.com/zh-cn/library/cc262303(v=office.12).aspx
http://msdn.microsoft.com/zh-cn/library/vstudio/ee805045.aspx服務器
Question 139
You are planning an upgrade to a SharePoint 2010 site that contains a feature named MyOriginalCapability. The MyOriginalCapability feature has a version number of 1.0.0.0 but the feature is not yet activated. The new feature is named MyEnhancedCapability and depends on the capabilities of the feature MyOriginalCapability. Your plan must include activation of the MyOriginalCapability feature. You need to plan the deployment of the new feature.
What should your plan for the upgrade include?
A. Incrementing the Version attribute of the MyOriginalCapability feature from 1.0.0.0 to 2.0.0.0
B. Incrementing the Version attribute of the MyOriginalCapability and MyEnhancedCapability features from 1.0.0.0 to 2.0.0.0
C. An Activation Dependency element and Upgrade Actions element in the MyEnhancedCapability feature that references the MyOriginalCapability feature
D. An Activation Dependency element and Upgrade Actions element in the MyOriginalCapability feature that references the MyEnhancedCapability featureapp
解析:
你計劃升級一個包含了名爲MyOriginalCapability 功能的Sharepoint網站,此MyOriginalCapability功能當前版本爲1.0.0.0 而且還沒有被激活。用於升級的有一個名爲MyEnhancedCapability的功能,且此功能依賴於功能MyOriginalCapability,你須要在部署升級此網站時激活MyOriginalCapability功能。 你該如何操做?
因爲後面開發的MyEnhancedCapability功能依賴於老版本的功能MyOriginalCapability,因此它們之間存在激活依賴關係,所以能夠直接排除選項A.B.
而選項D是MyOriginalCapability依賴於MyEnhancedCapability,依賴關係搞反了,因此也排除。
所以本題答案應該選 C網站
參考
http://msdn.microsoft.com/zh-cn/library/aa543162(v=office.14).aspx
http://msdn.microsoft.com/zh-cn/library/vstudio/ee231535(v=vs.100).aspxui
Question 140
You are planning an upgrade to a SharePoint 2010 site that contains a feature named MyOriginalCapability. The MyOriginalCapability feature has a version number of 1.0.0.0. You have the following requirements:
.Update the MyOriginalCapability feature to include new fields.
.Deploy a new feature named MyEnhancedCapability that uses the new fields of the MyOriginalCapability feature.
You need to plan the upgrade to meet the requirements. Which approach should you recommend?
A. Increment the Version attribute of the MyOriginalCapability feature to 2.0.0.0, and include an activation dependency with a Minimum Version property of 2.0.0.0 in the MyEnhancedCapability feature.
B. Increment the Version attribute of the MyOriginalCapability feature to 2.0.0.0, and include a Version Range element with End Version set to 2.0.0.0.
C. Increment the Version attribute of the MyEnhancedCapability feature to 2.0.0.0, and include an activation dependency with a Minimum Version property of 2.0.0.0 in the MyOriginalCapability feature.
D. Increment the Version attribute of the MyEnhancedCapability feature to 2.0.0.0, and include a Version Range element with End Version set to 2.0.0.0.spa
解析:
你計劃升級一個包含了名爲MyOriginalCapability 功能的Sharepoint網站,此MyOriginalCapability功能當前版本爲1.0.0.0 。你須要知足以下要求:
要求1.升級MyOriginalCapability功能以包含新的字段
要求2.部署一個新的名爲MyEnhancedCapability的功能,此功能使用前面新添加的字段。
你該如何操做此次升級呢?
咱們知道,功能升級基礎結構可自動檢測並升級其餘功能所依賴的功能,所以,若是向 Feature.xml 文件中添加 <ActivationDependencies> 部分,則無需添加任何特定升級代碼便可支持升級被依賴的功能。可是,若是激活依賴關係是還沒有激活的可見功能,則必須編寫功能升級代碼來確保在功能升級期間激活其餘功能所依賴的可見功能。
<ActivationDependency> 元素具備一個 MinimumVersion 屬性,可爲進行版本管理的功能依賴關係提供支持。在對象模型中,SPFeatureDependency 類具備一個對應的 MinimumVersion 屬性,該屬性返回在 Feature.xml 文件中指定的值。當您要確保已安裝和激活「被依賴」功能的所需版本時,進行版本管理的功能依賴關係將很是有用。
Microsoft SharePoint Foundation 中的功能版本用於觸發功能升級。若是升級功能版本,但未在 Feature.xml 文件中指定任何功能升級邏輯,則當功能升級運行時,它只更新功能的版本號。可是,若是指定了功能升級邏輯,則會執行升級代碼,而且還會自動更新版本號。
在更新功能時增長版本號,並根據須要添加相應的功能升級邏輯。即便不須要添加功能升級邏輯,也應增長版本號,以便可以區分在服務器場中部署的功能的版本。
因爲本題是升級MyOriginalCapability 功能,其版本號天然應該從1.0.0.0提升到 2.0.0.0。因此應該排除選項C.D,由於這兩個選項升級的是MyEnhancedCapability 功能而非MyOriginalCapability 功能。而功能MyEnhancedCapability是新開發的功能,它與前面的MyOriginalCapability功能存在激活依賴關係,MyEnhancedCapability依賴於新版本(2.0.0.0)的MyOriginalCapability功能中定義的新的字段,因此咱們就須要在MyEnhancedCapability的Feature.xml中定義它依賴於功能MyOriginalCapability。因此,選項A爲本題正確答案。xml
所以本題答案應該選 A
參考
http://msdn.microsoft.com/zh-cn/library/aa543162(v=office.14).aspx
http://msdn.microsoft.com/zh-cn/library/vstudio/ee231535(v=vs.100).aspx
http://msdn.microsoft.com/zh-cn/library/ee538968(v=office.14).aspx