катэгорыя Архівы: SharePoint бяспекі

"Адмоўлена ў доступе” у Default.aspx на SharePoint 2010 Пад сайта

Адзін з маіх кліентаў працягваў жыць са сваім SharePoint 2010 сучасных умовах.  Мы выявілі, што пэўная група карыстальнікаў не можа атрымаць доступ да сваёй хатняй старонкі па змаўчанні.  SharePoint адказалі "Адмоўлена ў доступе" і звычайныя "Увайсці як іншы карыстальнік" або "Запыт доступу" адказ. 

Калі мы выкарыстоўвалі зграбны "Праверка доступу" функцыі ён пацвердзіў, што канчатковыя карыстальнікі сапраўды маюць доступ.  Яшчэ, яны не маглі патрапіць на старонку.

Я рушыў услед шмат дарог да розных тупікі, пакуль я не вырашыў параўнаць вэб-частак на старонцы зламанай супраць аналагічных рабочых старонцы.  Я зрабіў, што, паставіўшы старонкі ў рэжыме абслугоўвання, дадаўшы "?Змест = 1 "на старонку. Так, здавалася, «HTTP://Сервер / даччынага / даччынага / default.aspx?Змест = 1 ". 

Гэта паказала мне, два вэб-частак, званых "Памылка" з апісаннем, як "Памылка" па пабітых старонцы.  Я не думаю, каб узяць вечка экрана падчас.

Я зняў іх і, што вырашылі праблему.

Я бачыў пытанне, як гэта прыдумалі на форумах у мінулым, і я быў вельмі скептычна патрабаванні сайт аўтара, што ён бяспекі настроены належным чынам.  Я * ведаю * Я бяспекі створана правы ўсмешка  Наступны раз, Я буду больш адкрытым і менш скептычна.

</канец>

Падпісацца на мой блог.

Выконвайце за мной на Twitter у http://www.twitter.com/pagalvin

Выкарыстанні працоўнага працэсу для сімуляцыі бяспекі Тып кантэнту

Яшчэ адзін дзень, іншы MSDN-форумаў натхнілі паведамленне.

Нехта пытаўся, ці могуць яны забяспечыць ўтрыманне такі тып, што, калі карыстальнік націскае на кнопку "Стварыць" на карыстацкі спіс, Толькі тыпы кантэнту, якую гэта асоба атрымлівае доступ з'явіцца ў расчыняецца спісе.  Як мы ведаем, гэта не падтрымліваецца з скрынкі.

Гэтае пытанне падымаецца час ад часу і на гэты раз, У мяне была новая ідэя.  Давайце выкажам здагадку, што ў нас ёсць такія сцэнары:

  • У нас ёсць служба падтрымкі сістэмы продажу квіткоў.
  • Падтрымкі сістэмы продажу квіткоў дазваляе карыстальнікам ўводзіць рэгулярныя білет падтрымкі інфармацыя, такіх як праблемная вобласць, Праблема статусу, і г.д..
  • Мы хочам, каб "супер" карыстальнікам ўказваць "тэрміновасць" поле.
  • Іншыя карыстальнікі не маюць доступу да гэтай галіне.  Сістэма будзе заўсёды прызначаць «сярэднім» узроўні прыярытэту на іх запыты.

Што мы можам зрабіць, гэта стварыць два асобных спісу SharePoint і двух розных тыпаў кантэнту, адзін для "супер" карыстальнікаў, а другі для ўсіх астатніх.

Працоўны працэс у кожным спісе капіюе дадзеныя ў асноўны спіс (фактычны білет падтрымкі спісу) і працэс пераходзіць адтуль.

Гэты падыход можа працаваць цячы выгляд калонкі ўзровень бяспекі, а таксама. 

Я не спрабаваў, але ён адчувае сябе разумна і дае даволі простыя, Калі даволі груба, варыянту для рэалізацыі свайго роду тып кантэнту і нават бяспеку на ўзроўні слупка.

</канец>

Падпісацца на мой блог.

Выконвайце за мной на Twitter у http://www.twitter.com/pagalvin

Змест рашэнні, а аўтаматычная абарону на ўзроўні элементаў бедняка

Там у агульнай бізнес-сцэнар з InfoPath Forms.  Мы хочам даць людзям магчымасць запаўняць формы InfoPath і прадставіць іх у бібліятэку.  Мы хочам, каб менеджэры (і ніхто іншы) мець доступ да тых форм.

Гэтае пытанне падымаецца час ад часу на формах (e.g. http://social.technet.microsoft.com/Forums/en-US/sharepointadmin/thread/76ccef5a-d71c-4b7c-963c-613157e2a966/?prof=required)

Хуткі спосаб вырашыць гэта, каб уключыць зацвярджэнне кантэнту на бібліятэцы формаў.  Перайсці версіі бібліятэкі налады і наладзіць яго, як паказана:

image 

Націсніце на кнопку "патрабуецца зацвярджэнне", што дазволіць вам падабраць значэнне для праекта бяспекі тавару.

Гэта крыху нелагічным, таму што мы не думаю, што з пункту гледжання "зацвярджэнне кантэнту", калі ўсё, што мы хочам зрабіць, гэта каб людзі не бачачы формы іншых карыстальнікаў.  Аднак, ён добра працуе (на маю вопыту).  Проста не ўхваляю тых формах, і яны будуць заўсёды лічыцца "праекты". 

Дайце зацвярджэнне права на людзей, якія павінны быць у стане бачыць іх, і вы закрылі цыкл.

Гэта не зусім вялікія навіны, Але пытанне сапраўды падыходзіць з некаторай рэгулярнасцю, так што я думаў, што будзе варта размяшчэнне.

</канец>

Падпісацца на мой блог.

Выконвайце за мной на Twitter у http://www.twitter.com/pagalvin

Што такое абмежаваны доступ ці інакш?

АБНАЎЛЕННЕ 11/03/08: Абавязкова прачытайце выдатныя і падрабязныя каментары ад Dessie Lunsford на гэта паведамленне.

Я працаваў на сакрэтным праекце тэхналогій для рэдагавання да маючых адбыцца кнігі і спасылкі гэты запіс у блогу Тайлера Батлер на блогу MSDN ECM. This is the first time I personally read a clear definition of the meaning of Limited Access. Here’s the meat of the definition:

У SharePoint, ананімных карыстальнікаў’ правы вызначаюцца абмежаваным узроўнем дазволу доступу. Абмежаваны доступ асаблівы ўзровень дазволу, якія не могуць быць прызначаныя карыстачу або групе непасрэдна. Прычынай яна існуе таму, што калі ў вас ёсць бібліятэка або даччынага што парушыў спадчыну дазволаў, , І вы даеце карыстачу / групе доступ толькі да гэтай бібліятэцы / даччыны сайт, для таго, каб праглядзець яго змесціва, карыстальніка / групы павінны мець некаторы доступ да каранёвай вэб-. У адваротным выпадку карыстальнік / група не зможа праглядаць бібліятэку / даччыны сайт, нават калі яны маюць там правы, таму што ёсць рэчы ў корані вэб, якія неабходныя, каб зрабіць сайт або бібліятэку. Таму, калі вы даеце дазволу групы толькі даччынага або бібліятэкі, парушэнне спадчыну дазволаў, SharePoint аўтаматычна дасць Абмежаваны доступ да гэтай групы або карыстачу на каранёвай вэб-.

Гэтае пытанне падымаецца час ад часу на форумах MSDN, і я заўсёды быў цікаўным (але не цікаўныя, каб зразумець гэта да сённяшняга дня :)).

</канец>

Падпісацца на мой блог.

Выконвайце за мной на Twitter у http://www.twitter.com/pagalvin

Technorati Тэгі:

Quick Tip: Налада бяспекі для дазволу адміністратараў доступ да любых сайтаў у Мой SharePoint

У знак таго, што сацыяльныя кампутарныя пачынае здымаць з SharePoint, I see an increased number of My Site type questions. One common question goes something like this:

"I am an administrator and I need to be able to access every My Site. How do I do that?"

The trick here is that each My Site is its own site collection. SharePoint security is normally administered at the site collection level and this trips up many a SharePoint administrator. Нармальна, she already has access to configure security in the "main" сямействаў сайтаў і не могуць зразумець, што гэта аўтаматычна не працуе для асабістых сайтаў.

Сайт калекцый калектыўна жыць у ёмістасці большага аб'ёму, which is the web application. Farm admins can can configure security at the web app level and this is how admins can grant themselves access to any site collection in the web application. This blog entry describes one of my personal experiences with web application policies. I defined a web application policy by accident: http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!255.entry.

Web application policies can be dangerous and I suggest that they be used sparingly. If I were an admin (і дзякуй Богу, я не), I would create a separate AD account named something like "SharePoint Web App Administrator" and give that one account the web application security role it needs. I would not configure this kind of thing for the regular farm admin or individual site collection admins. It will tend to hide potential problems because the web app role overrides any lower level security settings.

</канец>

Падпісацца на мой блог.

Выконвайце за мной на Twitter у http://www.twitter.com/pagalvin

Праглядаў і слупкоў ў спісах і бібліятэках дакументаў не можа быць забяспечана

АБНАЎЛЕННЕ (02/29/08): Гэты новы CodePlex праект ўяўляецца распрацоўка спосабу абароны кожнага слупка: http://www.codeplex.com/SPListDisplaySetting. If you have any experience working with it, калі ласка, пакіньце каментар.

Форум плакаты часта задаюць пытанне, як гэта: "I have a manager view and and a staff view of a list. How do I secure the manager view so that staff can not use it?"

Яны таксама часта пытаюцца, звязаны з гэтым пытанне: "I want to secure a specific metadata column so that only managers may edit that column while others may not even see it."

These answers apply to both WSS 3.0 і MOSS:

  • SharePoint не забяспечвае па-за убудаваную падтрымку для забеспячэння прагляду.
  • SharePoint не забяспечвае па-за убудаваную падтрымку слупкі бяспекі.

There are several techniques one can follow to meet these kinds of security requirements. Here’s what I can think of:

  • Use out-of-the-box item level security. Views always honor item level security configuration. Event receivers and/or workflow can automate security assignment.
  • Use personal views for "privileged" Праглядаў. These are easy enough to set up. Аднак, due to their "personal" прырода, these need to be configured for each user. Use standard security configuration to prevent anyone else from creating a personal view.
  • Выкарыстоўвайце вэб-частка прадстаўлення дадзеных і ўсталёўваць нейкую AJAXy ролях бяспекі рашэння.
  • Roll Your Own Функцыянальнасць Адлюстраванне спісу і ўключыць фільтрацыю па ролях бяспекі на ўзроўні слупка.
  • Змена формы ўводу дадзеных і выкарыстоўваць JavaScript ў спалучэнні з мадэллю бяспекі для рэалізацыі на ўзроўні слупкоў па ролях бяспекі.
  • Use an InfoPath form for data entry. Implement column-level security trimming via web service calls to SharePoint and conditionally hide fields as needed.
  • Roll Your Own ASP.NET ўводу дадзеных, якая рэалізуе функцыю узроўні слупкоў па ролях бяспекі.

Ні адзін з гэтых варыянтаў не такія ўжо вялікія, але ёсць па меншай меры шлях, каб прытрымлівацца, калі вам трэба, нават калі гэта цяжка.

УВАГА: Калі спусціцца аднаму з гэтых шляхоў, don’t forget about "Actions -> Open with Windows Explorer". You want to be sure that you test with that feature to make sure that it doesn’t work as a "back door" і перамагчы вашых схемы бяспекі.

Калі ў вас ёсць іншыя ідэі для вопыту ці з забеспячэннем слупкоў або уяўленняў, калі ласка напішыце мне або пакіньце каментар, і я буду абнаўляць аб'яву па меры неабходнасці.

</канец>

Падпісацца на мой блог.

Technorati Тэгі:

Рашэнне: System.IO.FileNotFoundException на “SPSite = новы SPSite(URL-адрас)”

АБНАЎЛЕННЕ: Я адказваў на гэтае пытанне ў MSDN тут (http://forums.microsoft.com/Forums/ShowPost.aspx?PostID=2808543&SiteID=1&mode=1) and Michael Washam of Microsoft responded with a concise answer.

Я стварыў вэб-сэрвісу ў якасці BDC-дружалюбных фасад to a SharePoint list. When I used this from my development environment, усё працавала нармальна. Калі я гэта мігравалі на новы сервер, Я сутыкнуўся з гэтай памылкай:

System.IO.FileNotFoundException: Вэб-дадатак на http://localhost/sandbox не можа быць знойдзены. Пераканайцеся, што вы набралі адрас правільна. Калі URL павінны служыць існуючы кантэнт, Сістэмны адміністратар можа спатрэбіцца, каб дадаць новае адлюстраванне URL запыту да меркаванага прымяненню. у Microsoft.SharePoint.SPSite .. CTOR(SPFarm грузаў, Уры RequestUri, Булевы contextSite, SPUserToken UserToken) у Microsoft.SharePoint.SPSite .. CTOR(Радок requestUrl) у Conchango.xyzzy.GetExistingDocument(Радок minId, Радок maxId, Радок назвы фільтра) ў C:\Дакументы і Settings Павел Мае дакументы Visual Studio 2005 Projects XYZZY BDC_DocReview BDC_DocReview DocReviewFacade.asmx.cs:лінія 69

Вось лінія 69:

выкарыстанне (SPSite сайта = новы SPSite("http://localhost/sandbox"))

Я спрабаваў розныя варыяцыі на URL, у тым ліку з выкарыстаннем рэальнага імя сервера, яго IP адрас, слеш у канцы па спасылцы, і г.д.. I always got that error.

Я Google to research it. Lots of people face this issue, або змены яго, але ніхто, здавалася, ён вырашыў.

Tricksy MOSS ўмове, што такія падрабязныя звесткі пра памылку, што яна не прыходзіла мне ў галаву праверыць 12 hive logs. У канчатковым рахунку, аб 24 гадзін пасля мой калега рэкамендавалі мне зрабіць гэта, Я праверыў 12 вулей часопіс і знайшоў:

Выключэнне адбылося пры спробе набыць мясцовая гаспадарка:
System.Security.SecurityException: Запытаны доступ да рэестру не дапускаецца.
у System.ThrowHelper.ThrowSecurityException(ExceptionResource рэсурсаў) ў
(Радок назвы, Булевы запісу) ў
(Радок назвы) ў
() ў
() ў
(SPFarm& ферма, Лагічны& isJoined)
Зона зборкі, якія не былі:  MyComputer

Гэта адкрыла новыя магчымасці для даследавання, так што гэта было да Google. Гэта прывяло мяне да гэтага Форум паведамленне: HTTP://forums.codecharge.com / posts.php?post_id = 67135. That didn’t really help me but it did start making me think there was a database and/or security issue. I soldiered on and Andrew Connell ў post finally triggered the thought that I should make sure that the application pool’s identity account had appropriate access to the database. I thought it already did. Аднак, мой калега пайшоў і даў асобу прыкладанне басейн кошт поўнага доступу да SQL.

Як толькі яна зрабіла, што змяненне, everything started working.

Што адбылося далей, лепш за ўсё выяўляецца ў выглядзе хайку верш:

Праблемы падняць рукі.
You swing and miss. Try again.
Поспех! But how? Чаму?

Яна не хацела, каб пакінуць усё як адзін, што, аддаючы перавагу, каб даць мінімальна неабходнага дазволу (і, магчыма, з прыцэлам на напісанне блога; Я забіў яе да ўдару, muhahahahaha!).

Яна зняла паслядоўных дазволу ад асобы ўліковага запісу пула прыкладанняў да … there was no longer any explicit permission for the app pool identity account at all. The web service continued to work just fine.

We went and rebooted the servers. Everything continued to work fine.

Так, рэзюмаваць: we gave the app pool identity full access and then took it away. The web service started working and never stopped working. Bizarre.

Калі хто ведае, чаму гэта павінна працавалі, калі ласка, пакіньце каментар.

</канец>

Technorati Тэгі:

Мінімальная бяспекі, неабходных для InfoPath Forms

I needed to meet a security requirement for an InfoPath form today. In this business situation, a relatively small number of individuals are allowed to create a new InfoPath form and a much wider audience are allowed to edit it. (Гэта нова-Пракат-інтэрнат форме, якая выкарыстоўваецца персаналам, які запускае працоўны працэс).

Для дасягнення гэтай мэты, Я стварыў стварыў два новых узроўняў дазволаў ("create and update" and "update only"), broke inheritance for the form library and assigned permissions to a "create, абнаўленне" user and a separate "update only" карыстальнік. The mechanics all worked, but it turned out to be a little more involving than I expected. (Калі вы адчуваеце сябе крыху хісткія на SharePoint дазволаў, праверыць гэта паведамленне ў блогу). The required security configuration for the permission level was not the obvious set of granular permissions. To create an update-only permission level for an InfoPath form, Я зрабіў наступнае:

  1. Стварыце новы ўзровень дазволаў.
  2. Прыбраць усе варыянты.
  3. Selected only the following from "List permissions":
    • Змяненне элементаў
    • Прагляд элементаў
    • Прагляд старонак прыкладанняў

Выбар гэтых варыянтаў дазваляе карыстальніку абнаўляць формы, але не стварыць яго.

The trick was to enable the "View Application Pages". There isn’t any verbage on the permission level that indicates that’s required for update-only InfoPath forms, але аказваецца, што гэта.

Create-and-Update was even stranger. I followed the same steps, 1 праз 3 вышэй. I had to specifically add a "Site Permission" варыянт: "Use client integration features". Зноў, Апісанне не робіць яго здавацца, што гэта павінны быць неабходныя для формаў InfoPath, але гэта так.

</канец>

Technorati Тэгі: ,

SharePoint ня Забяспечыць “Хто мае доступ” Справаздачы

АБНАЎЛЕННЕ 01/28/08: Гэты праект CodePlex разглядае гэтае пытанне: http://www.codeplex.com/AccessChecker. I have not used it, але гэта выглядае шматспадзеўна, калі гэта пытанне, Вам неабходна звярнуцца ў вашай асяроддзі.

АБНАЎЛЕННЕ 11/13/08: Джоэл Олсон напісаў вельмі добры пост на больш шырокі пытанне забеспячэння бяспекі тут: HTTP://www.sharepointjoel.com / Спісы / Паведамленні / Post.aspx?List=0cd1a63d-183c-4fc2-8320-ba5369008acb&ID=113. It links to a number of other useful resources.

Forum users and clients often ask a question along these lines: "How do I generate a list of all users with access to a site" or "How can I automatically alert all users with access to list about changes made to the list?"

There is no out of the box solution for this. If you think about it for a moment, it’s not hard to understand why.

SharePoint security is very flexible. There are at least four major categories of users:

  • Anonymous users.
  • SharePoint Users and Groups.
  • Active Directory users.
  • Аўтэнтыфікацыю на аснове формаў (FBA) карыстальнікаў.

The flexibility means that from a security perspective, any given SharePoint site will be dramatically different from another. In order to generate an access list report, one needs to ascertain how the site is secured, query multiple different user profile repositories and then present it in a useful fashion. That’s a hard problem to solve generically.

How are organizations dealing with this? I’d love to hear from you in comments or E-mail.

</канец>

SharePoint асноў бяспекі Першая / Пазбегнуць распаўсюджаных памылак

АБНАЎЛЕННЕ 12/18/07: Глядзіце артыкул Пола Liebrand для некаторых тэхнічных наступстваў выдаліць яго, ці змены назвы групы па змаўчанні (гл. яго каментар ніжэй, а).

Агляд:

SharePoint security is easy to configure and manage. Аднак, it has proven to be difficult for some first-time administrators to really wrap their hands around it. Not only that, I have seen some administrators come to a perfect understanding on Monday only to have lost it by Friday because they didn’t have to do any configuration in the intervening time. (Я прызнаюся, што гэтую праблему самастойна). This blog entry hopefully provides a useful SharePoint security primer and points towards some security configuration best practices.

Важнае заўвага:

This description is based on out of the box SharePoint security. My personal experience is oriented around MOSS so there may be some MOSS specific stuff here, but I believe it’s accurate for WSS. I hope that anyone seeing any errors or omissions will point that out in comments or напішыце мне. I’ll make corrections post haste.

Асновы:

For the purposes of this overview, there are four fundamental aspects to security: users/groups, securable objects, permission levels and inheritance.

Users and Groups break down to:

  • Individual users: Pulled from active directory or created directly in SharePoint.
  • Groups: Mapped directly from active directory or created in SharePoint. Groups are a collection of users. Groups are global in a site collection. They are never "tied" to a specific securable object.

Securable objects break down to at least:

  • Sites
  • Бібліятэкі дакументаў
  • Individual items in lists and document libraries
  • Folders
  • Various BDC settings.

There other securable objects, but you get the picture.

Permission levels: A bundle of granular / low level access rights that include such things as create/read/delete entries in lists.

Inheritance: By default entities inherit security settings from their containing object. Sub-sites inherit permission from their parent. Document libraries inherit from their site. So on and so forth.

Users and groups relate to securable objects via permission levels and inheritance.

The Most Important Security Rules To Understand, Ever 🙂 :

  1. Groups are simply collections of users.
  2. Groups are global within a site collection (I.E. there is no such thing as a group defined at a site level).
  3. Group name not withstanding, groups do not, in and of themselves, have any particular level of security.
  4. Groups have security in the context of a specific securable object.
  5. You may assign different permission levels to the same group for every securable object.
  6. Web application policies trump all of this (гл. ніжэй).

Адміністратары бяспекі губляюцца ў моры груп і карыстальнікаў, спісы могуць заўсёды спадзявацца на гэтыя аксіёмы, каб кіраваць і разумець іх налады бяспекі.

Найбольш распаўсюджаныя памылкі:

  • Імёны груп ілжыва прадугледжвае дазвол: З скрынкі, SharePoint defines a set of groups whose names imply an inherent level of security. Consider the group "Contributor". One unfamiliar with SharePoint security may well look at that name and assume that any member of that group can "contribute" to any site/list/library in the portal. That may be true but not because the group’s name happens to be "contributor". This is only true out of the box because the group has been provided a permission level that enables them to add/edit/delete content at the root site. Through inheritance, the "contributors" group may also add/edit/delete content at every sub-site. One can "break" the inheritance chain and change the permission level of a sub-site such that members of the so-called "Contributor" group cannot contribute at all, but only read (напрыклад). This would not be a good idea, відавочна, since it would be very confusing.
  • Groups are not defined at a site level. It’s easy to be confused by the user interface. Microsoft provides a convenient link to user/group management via every site’s "People and Groups" спасылка. It’s easy to believe that when I’m at site "xyzzy" and I create a group through xyzzy’s People and Groups link that I’ve just created a group that only exists at xyzzy. That is not the case. I’ve actually created a group for the whole site collection.
  • Групы сяброўства не залежыць ад сайта (I.E. яна ўсюды аднолькавая група выкарыстоўваецца): Consider the group "Owner" і ў двух месцах, "HR" and "Logistics". It would be normal to think that two separate individuals would own those sites — an HR owner and a Logistics owner. The user interface makes it easy for a security administrator to mishandle this scenario. If I didn’t know better, Я мог бы звяртацца да груп людзей і спасылкі праз сайт HR, select the "Owners" group and add my HR owner to that group. A month later, Logistics comes on line. I access People and Groups from the Logistics site, add pull up the "Owners" group. I see the HR owner there and remove her, thinking that I’m removing her from Owners at the Logistics site. На самай справе, I’m removing her from the global Owners group. Hilarity ensues.
  • Будучы не ў стане назваць групы, заснаваныя на канкрэтнай ролі: The "Approvers" group is a perfect example. What can members of this group approve? Where can they approve it? Do I really want people Logistics department to be able to approve HR documents? Of course not. Always name groups based on their role within the organization. This will reduce the risk that the group is assigned an inappropriate permission level for a particular securable object. Name groups based on their intended role. In the previous HR/Logistics scenario, Я бы стварыў дзве новыя групы: "HR Owners" and "Logistics Owners" і прызначыць разумныя ўзроўні дазволаў для кожнага і мінімальную суму, неабходную для тых карыстальнікаў, каб зрабіць іх працу.

Іншыя карысныя спасылкі:

If you’ve made it this far:

Please let me know your thoughts via the comments or email me. If you know other good references, please do the same!

Technorati Тэгі: