Fonaments de seguretat de SharePoint imprimació / Evitar trampes comuns

ACTUALITZACIÓ 12/18/07: Veure article de Paul Liebrand algunes conseqüències tècniques de eliminant o modificant els noms de grup per defecte (veure el seu comentari a continuació, així).

Visió de conjunt:

Seguretat de SharePoint és fàcil de configurar i administrar. No obstant això, ha demostrat ser difícil per a alguns administradors primera vegada realment embolicar les seves mans al voltant. No només allò, He vist alguns administradors arribar a una entesa perfecte dilluns a només han perdut per divendres, ja que no cal fer qualsevol configuració en el temps intermedis. (Reconec que té aquest problema jo mateix). Aquesta entrada del blog esperem que proporciona una útil introducció de seguretat de SharePoint i apunta cap a algunes pràctiques millors de configuració de seguretat.

Nota important:

Aquesta descripció es basa de la caixa de seguretat de SharePoint. La meva experiència personal està orientat als voltants molsa perquè hi pot haver alguns molsa matèria específica aquí, però crec que és precís per WSS. Espero que ningú veure errors o omissions a assenyalar que en els comentaris o Rebi per email. Vaig a fer correccions enviar de pressa.

Fonaments:

Als efectes d'aquesta visió de conjunt, hi ha quatre aspectes fonamentals a la seguretat: els usuaris/grups, SecurAble objectes, nivells de permís i l'herència.

Els usuaris i grups trencar a:

  • Usuaris individuals: Va treure de l'actiu directori o creades directament en SharePoint.
  • Grups: Assignades directament des de l'active directory o creat en SharePoint. Els grups són una col·lecció d'usuaris. Els grups són globals en una col·lecció de llocs. Ells mai "lligat" a un objecte de securable específic.

SecurAble objectes trencar cap avall per com a mínim:

  • Llocs
  • Biblioteques de documents
  • Elements individuals en les llistes i biblioteques de documents
  • Carpetes
  • Diverses escenes del BDC.

Hi ha altres objectes securable, però apareix el quadre.

Nivells de permís: Un farcell de granular / drets d'accés de nivell baix que inclouen coses com crear/llegir/suprimir entrades de llistes.

L'herència: Per defecte les entitats hereta la configuració de seguretat del seu objecte que conté. Subllocs hereten el permís dels seus pares. Les biblioteques de documents hereta des del seu lloc. Així successivament i així successivament.

Els usuaris i grups relacionar objectes securable mitjançant els nivells de permís i l'herència.

Les normes de seguretat més importants d'entendre, alguna vegada 🙂 :

  1. Grups només són col·leccions d'usuaris.
  2. Els grups són globals dins d'una col·lecció de llocs (i. e. no hi ha cap tal cosa com a grup definit en l'àmbit de lloc).
  3. Nom del grup malgrat les, grups no, a i de si mateixos, tenir qualsevol nivell particular de seguretat.
  4. Grups tenir seguretat en el context d'un objecte específic securable.
  5. Pot assignar nivells de permís diferent a un mateix grup per a cada objecte de securable.
  6. Normes d'aplicació web tot això superen (Vegeu a continuació).

Els administradors de la seguretat perduts en un mar de llistats de grups i usuaris sempre poden confiar en aquests axiomes de gestionar i entendre la seva configuració de seguretat.

Trampes comuns:

  • Grup noms falsament implica l'autorització: Fora de la caixa, SharePoint defineix un conjunt dels grups els noms dels quals implica un nivell de seguretat inherent. Considerar el grup "La contribuent". Un desconegut amb seguretat de SharePoint bé pot mirar aquest nom i assumir que qualsevol membre d'aquest grup poden "contribuir" a qualsevol lloc/llista/biblioteca al portal. Això pot ser cert, però no perquè el nom del grup passa a ser "la contribuent". Això només és cert fora de la caixa perquè el grup s'ha proporcionat un nivell de permís que els permet afegir, editar i suprimir contingut en el lloc arrel. Per herència, els col·laboradors"" grup també pot afegir, editar i suprimir contingut en cada sub-lloc. Un pot "trencar" la cadena d'herència i canvi el nivell de permís d'un sub-site que els membres de la anomenada "contribuent" grup no poden aportar res, però només llegir (per exemple). Això no seria una bona idea, Òbviament, des d'aleshores seria molt confús.
  • Grups no es defineixen en l'àmbit de lloc. És fàcil confondre per la interfície d'usuari. Microsoft proporciona un enllaç convenient a la gestió de l'usuari/grup a través de "persones i grups de tots els llocs" enllaç. És fàcil creure que quan estic al lloc "xyzzy" i crea un grup a través persones de xyzzy i grups que he creat un grup que només existeix a xyzzy enllaç. Aquest no és el cas. En realitat he creat un grup per a la col·lecció de llocs sencer.
  • Membres de grups no varia en el lloc (i. e. és el mateix a tot arreu que el grup s'utilitza): Considerar el "propietari de grup" i dos llocs, "L'H" i "Logística". Seria normal a pensar que els individus separats dos vols propis aquells llocs — un propietari HR i propietari d'una logística. La interfície d'usuari fa que sigui fàcil per a un administrador de seguretat de embalat aquest escenari. Si no saben millor, Puguin accedir a les persones i grups enllaços via el lloc d'HR, Seleccioneu els propietaris"" grup i afegir el meu propietari HR a aquest grup. Un mes més tard, Logística ve en línia. Accedir les persones i grups des del lloc de logística, afegir tiri dels propietaris"" grup. Veig el propietari HR allà i treure-la, pensant que estic traient ella dels propietaris en el lloc de logística. De fet, Jo li estic traient del grup propietaris global. Sobrevé hilaritat.
  • Fracassant a grups de nom basat en el paper específic: Els examinadors"" grup és un exemple perfecte. Què pot membres d'aquest aprova grup? On van aprovar-lo? Realment vull Departament de logística de gent per poder aprovar els documents de HR? Per descomptat no. Sempre nom basats en el seu paper dins l'organització de grups. Això reduirà el risc que el grup té assignat un nivell de permís inadequat per a un determinat objecte securable. Grups de nom basats en el seu paper destinat. En el cas anterior HR/logística, He ha creat dos nous grups: "HR propietaris" i "logística propietaris" i assignar els nivells de permís sensible per a cada un i l'import mínim necessari per a aquells usuaris a fer la seva feina.

Altres referències útils:

Si ho heu fet això molt:

Si us plau deixi'm saber els seus pensaments mitjançant els comentaris o email. Si coneixeu altres bones referències, Si us plau, fer el mateix!

Etiquetas de Technorati:

Ràpid i fàcil: Crear un element Web de visualització de dades (DVWP)

Hi ha una gran quantitat d'informació gran sobre la WSS 3.0 Element Web de visualització de dades (DVWP) a la web de fonts diverses. No obstant això, Em va semblar ser sorprenentment difícils de trobar informació sobre aquest primer pas molt bàsic. Heus aquí un altre article en "ràpida i fàcil" sèrie per encarar-lo.

Seguiu aquests passos per crear un element web de visualització de dades (DVWP). Es basen en anuncis"" element web, però s'apliquen a la majoria de llistes.

  1. Crear un element web anuncis i afegiu-lo a un lloc.
  2. Obrir el web al SharePoint Designer.
  3. Obrir aspx la pàgina.
  4. Seleccioneu l'element web anuncis i clic correcte.
  5. Al menú contextual, Selecte "convertir a XSLVisualització de t de dades".

SharePoint Designer li notifica que aquest lloc és ara personalitzat de la seva definició del lloc. Això no és necessàriament dolent, però hi ha implicacions importants en relació (rendiment, Actualització, altres) que s'expliquen d'aquest petit "ràpid i fàcil" entrada. Per obtenir més informació sobre aquest tema, Us recomano dos llibres aquí així com el seu favorit cerca a Internet.

Confirmar que ho feia correctament:

  1. Tanqui i reobri el navegador web (per evitar accidentalment tornar a publicar la original "Afegeix una nova part de la web").
  2. Seleccioni la fletxa de l'element web manera desplegable i triar "modificar compartit elements Web" des del menú.
  3. Tauler de l'eina s'obre a la dreta.
  4. El panell ha canviat de seus habituals definir les opcions per això:
imatge

“No es pot obtenir la propietat de columna de l'esquema de llista de la llista del SharePoint” — Descripció/solucions

Aquesta setmana, Finalment hem reproduït un problema que havia estat informat per un usuari remot: Quan ella va intentar d'exportar el contingut d'una llista a l'excel, les coses, sembla per començar a treballar, però llavors Excel esclataria cap amunt d'un error: "No puc aconseguir el propietat llista esquema columna de la llista del SharePoint". Ella estava funcionant oficina 2003, Windows XP i connexió a molsa.

He buscat la Internets i veure algunes especulacions però res 100% definitiva. Per tant, aquest post.

El problema: Exportar una vista per l'excel que conté una data (data = el tipus de dades de la columna).

Què treballava per nosaltres: Convertir la data per "una sola línia de text". Llavors, reconvertir-la per una data.

Que resolt. Era bonic veure que va treballar la conversió, en realitat. Era molt nerviós que converteix les coses d'aquesta manera fallaria, però no feia.

Aquest error ha llançat una gran ombra sobre el tipus de dades data en la ment del client, Així que anem a estar buscant una resposta definitiva des de Microsoft i esperem que vaig a publicar i actualització aquí en el pròxim període curt de temps amb la seva resposta i hotfix informació oficial.

Altres referències:

http://www.kevincornwell.com/blog/index.php/cannot-get-the-list-schema-column-property-from-the-sharepoint-list/

http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2383611&SiteID=1

<final>

Subscriure's al meu blog.

Etiquetas de Technorati: ,

Ràpid i senzill: Enviar un correu electrònic amb l'hipervincle incrustat de flux de treball de SharePoint Designer

Una vegada o dues vegades mes, algú publica una pregunta del Fòrum: "Com puc incloure enllaços a URL que es pot fer clic des d'un correu electrònic de SharePoint Designer?"

Presentar sense cap comentari: (bé, en realitat hi ha més comentari després de la imatge):

imatge

Becky Isserman segueix amb una explicació útil sobre com inserir un enllaç a un article a l'e-mail: http://www.sharepointblogs.com/mosslover/archive/2007/11/20/addition-to-paul-galvin-s-post-about-sending-an-e-mail-with-hyperlinks-in-spd.aspx

Nova versió: Extensions de flux de treball de SharePoint Designer (funcions de manipulació de corda)

ACTUALITZACIÓ: Veure aquí per als meus pensaments en comercialitzar aquest projecte: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!569.entry

He estat ocupat treballant en el meu projecte de Codeplex que en l'actualitat se centra en la prestació de cadena extensions de manipulació als fluxos de treball creat mitjançant el SharePoint Designer.

Veure aquí per a detalls:

Projecte casa: http://www.codeplex.com/spdwfextensions

Llançament: https://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=spdwfextensions&ReleaseId=8280

Versió 1.0 inclou els trets nous següents:

Funció Descripció (Si no mateix com funció .net)
Num-entrades() Retorna els número "entrades" en una cadena segons un delimitador especificat.

Per exemple: Num-entrades en una corda "a,b,c" amb delimitador de"," = 3.

Entrada() Retorna l'enèsima testimoni d'una cadena segons un delimitador especificat.
Longitud String.Length
Substituir() String.Replace()
Conté() String.Contains()
Retorna la paraula "veritable" o la paraula "fals".
Subcadena(Inici) String.Substring(Inici)
Subcadena(Inici,longitud) String.Substring(Inici,longitud)
ToUpper() String.ToUpper()
ToLower() String.ToLower()
StartsWith() String.StartsWith()
Retorna la paraula "veritable" o la paraula "fals".
EndsWith() String.EndsWith()
Retorna la paraula "veritable" o la paraula "fals".

Un error de temps d'execució del servei BDC ha explicat

Em va causar un error BDC aquesta setmana que es manifesta en si en la interfície d'usuari i en la 12 registre de rusc al temps d'execució.

Primer, Això va aparèixer en la interfície d'usuari:

No s'ha pogut trobar camps per inserir tots els valors d'identificador per executar correctament la MethodInstance d'SpecificFinder amb nom … Assegurar que paràmetres d'entrada tinguin TypeDescriptors associats amb cada identificadors definits per a aquesta entitat.

Aquí està una captura de pantalla:

clip_image001

Jo també podria provocar aquest missatge per aparèixer en el 12 registre de rusc a es (utilitzant el meu high-tech-don't-try-this-at-home patentat "errors del misteriós" mètode):

11/14/2007 09:24:41.27 w3wp.exe (0x080C) 0x0B8C dades de negoci SharePoint Portal Server 6q4x excepció alta a BusinessDataWebPart.OnPreRender: System.InvalidOperationException: El valor d'identificador ”, de tipus ”, no és vàlid. Valor esperat identificador de tipus "System. String". a Microsoft.Office.Server.ApplicationRegistry.MetadataModel.Entity.FindSpecific(L'objecte[] subIdentifierValues, LobSystemInstance lobSystemInstance) a Microsoft.SharePoint.Portal.WebControls.BdcClientUtil.FindEntity(Entitat de l'entitat, L'objecte[] userValues, LobSystemInstance lobSystemInstance) a Microsoft.SharePoint.Portal.WebControls.BusinessDataItemBuilder.GetEntityInstance(Veure desiredView) a Microsoft.SharePoint.Portal.WebControls.BusinessDataDetailsWebPart.GetEntityInstance() a Microsoft.SharePoint.Portal.WebControls.BusinessDataDetailsWebPart.SetDataSourceProperties()

He buscat al voltant i va trobar algunes iniciatives en el Fòrum MSDN, però no fos suficient per a mi entendre el que estava fent mal. Vaig veure una transmissió per Ted Pattison que el meu empresa té segur en un servidor i va arribar a realitzar el meu problema.

En la meva ADF, Jo estic connectant a una base de dades SQL com mostrat:

            <Propietat Nom="RdbCommandText" Tipus="System.string">
              <![CDATA[
                SELECCIONEU SETID, CARRIER_ID, EFFDT, DESCR, EFF_STATUS, TAXPAYER_ID, NETWORK_ID, FRT_FORWARD_FLG, ALT_NAME1, ALT_NAME2, LANGUAGE_CD,
                      PAÍS, ADDRESS1, ADDRESS2, ADDRESS3, ADDRESS4, CIUTAT, NUM1, NUM2, HOUSE_TYPE, ADDR_FIELD1, ADDR_FIELD2, ADDR_FIELD3,
                      COMTAT, ESTAT, POSTAL, GEO_CODE, IN_CITY_LIMIT, COUNTRY_CODE, TELÈFON, EXTENSIÓ, ENVIAR PER FAX, LAST_EXP_CHK_DTTM, FREIGHT_VENDOR,
                      INTERLINK_DLL, TMS_EXCLUDE_FLG de dbo.PS_CARRIER_ID_VW amb (nolock)
                ON
                  (SETID <> "COMPARTIR") i
                  (inferior(CARRIER_ID) >= inferior(@MinId)) i
                  (inferior(CARRIER_ID) <= inferior(@MaxId)) i
                  (inferior(DESCR) COM més baix(@InputDescr))
                ]]>
            </Propietat>

M'era facilitada que SQL d'una persona DBA i em donen a entendre que és un especial vista que van crear només per a mi. La clau única allà és CARRIER_ID.

Aquí està l'error que em introduït:

      <Identificadors>
        <Identificador Nom="CARRIER_ID" TypeName="System.string" />
        <Identificador Nom="DESCR" TypeName="System.string" /> 
</Identificadors>

En algun lloc al llarg de la línia, Me les vaig arreglar confondre-me sobre el significat de <Identificadors> i afegeix el descriptor tot i que no és en realitat un identificador. Prenia DESCR fora el conjunt d'identificadors i presto! Que tot funcionava.

Espero que això estalviï una mica de dolor a algú 🙂

Etiquetas de Technorati: , , ,

No pot batre l'abast del SharePoint

Durant els darrers dos dies, He participat en dues reunions durant el qual ens va presentar els resultats d'un projecte de SharePoint. El CIO i el seu equip es va incorporar a la primera reunió. Que és l'estàndard i no especialment notables. El Departament d'informàtica és, òbviament, implicat en un desplegament d'empresa de qualsevol projecte de tecnologia. La Segona reunió procedí a V.P. de màrqueting, diversos consellers en representació de HR, Logística, Fabricació, Projectes de capital, Qualitat, Compra, Desenvolupament corporatiu i altres departaments (algunes de les quals no hi havia ni tan sols de directament implicats en l'actual fase). Que és un públic ampli poderós.

En la meva vida previ, Principalment he treballat en projectes d'ERP i CRM. Tots dos tenen un domini força ample solució però no tan àmplia com la del SharePoint. A ser plenament efectius, Projectes de SharePoint legítimament i necessàriament assolir en cada racó i esquerda d'una organització. Com molts altres solucions d'empresa té que arribar a classe de? No molts.

SharePoint representa clarament una oportunitat enorme per a aquells de nosaltres la sort d'estar en aquest espai. Proporciona una gran oportunitat de tècnic (que d'alguna manera és convertit en el cap aquí sota "Tecnologies que cal dominar"). Però fins i tot millor, SharePoint ens exposa a una extensa i àmplia varietat de processos de negoci a través d'aquests compromisos. Com molts especialistes CRM treballar amb la part de fabricació de l'empresa? Quants ERP treballen amb els recursos humans en l'adquisició de talent? SharePoint supera els dos.

Com tot, no és perfecte, però és un maleït bon lloc per ser.

Per a l'amor de [Ompli el seu estimat més ésser persona més alt], no canviar l ' títol’ columna del lloc.

En la Fòrums de SharePoint, de tant en tant algú pregunta sobre "Canviem l'etiqueta del títol" o sobre "traient títol de llistes".

Bottom line: No fer-ho!

Tristament, la interfície d'usuari permet un canvi d'un sol sentit d'aquella etiqueta de columna, com es Mostra:

imatge

Títol és una columna associat a l'element"" tipus de contingut. Molts, molts, molts CT utilitzar aquesta columna i si vostè canviar-lo aquí, -ones a tot arreu. Hi ha una bona probabilitat que vostè no tenia la intenció per que això passi. Probablement estàs pensant a si mateix, "Tinc una llista de cerca de costum i ' títol’ no té sentit com a nom de la columna, Així que vaig canviar-lo per ' codi d'estatus’ i afegir una columna de descripció." Però si seguir amb aquest pensament i rebategi ' títol’ a 'Codi d'estatus', títol de cada llista (incloent-hi les biblioteques de documents) canvis al "codi d'estatus" i probablement no tenia la intenció per que això passi.

El problema real és que aquest és un canvi de sentit únic. L'UI "sap" que el títol"" és una paraula reservada. Així, si prova i canviar "codi d'estatus" tornar a "Títol", s'evitarà i ara he pintar-se en una cantonada using paint that never dries 🙂

Llavors, què passa si ja ho canviat? No he vist la resposta que tots volem, que és un mètode simple i fàcil de canviar l'etiqueta 'Title' a. Ara mateix, el millor consell és canviar-lo a alguna cosa com "Doc/element títol". Això és una etiqueta prou genèrica que poden no ser massa discordant per als usuaris.

Tinc algunes altres idees que són en la meva llista de tasques pendents de les coses a la recerca:

  • Contactar amb Microsoft.
  • Fer alguna cosa amb el model d'objecte, potser en conjunció amb una característica.
  • Esbrinar l'esquema de base de dades i actualitzar manualment SQL. (Hauries de contactar amb Microsoft abans de fer això però; és probable que això es larà el seu contracte de suport).

Si qualsevol sap com resoldre aquest, Si us plau enviar un comentari.

Actualització de tarda, 11/15: He trobat aquest enllaç que descriu un mètode per crear un tipus de llista que no té una columna de títol: http://www.venkat.org/index.php/2007/09/03/how-to-remove-title-column-from-a-custom-list/

BDC ADF i el seu amic, CDATA

M'he adonat alguns maldestre i innecessari mà-codificació de RdbCommandText en alguns exemples (inclosos documentació de MSDN).

Volia assenyalar els nouvinguts a BDC que comandes poden ser embolicat en una etiqueta CDATA al seu natural"" formulari. Així, Aquesta construcció maldestre:

<Propietat Nom="RdbCommandText" Tipus="System.string">
Seleccioneu dbo.MCRS_SETTLEMENT.ID, DBO.MCRS_SETTLEMENT.Settlement de dbo.MCRS_SETTLEMENT
ON (ID &gt;= @MinId) I (ID &lt;= @MaxId)
</Propietat>

es pot representar millor d'aquesta manera:

<Propietat Nom="RdbCommandText" Tipus="System.string">
<![CDATA[
Seleccioneu dbo.MCRS_SETTLEMENT.ID, DBO.MCRS_SETTLEMENT.Settlement de dbo.MCRS_SETTLEMENT
ON (ID >= @MinId) I (ID <= @MaxId)
]]>
</Propietat>

</final>

Imprimació BDC

Introducció al BDC

Exemple funcional: ADF BDC que connecta a la base de dades SQL amb l'identificador d'usuari incrustat i contrasenya

Necessitava fer cables a molsa a una base de dades SQL mitjançant BDC. Per a propòsits de testatge/POC, Jo volia per incrustar el SQL compte d'usuari id i contrasenya a l'ADF. Començant amb Aquesta plantilla (http://msdn2.microsoft.com/en-us/library/ms564221.aspx), He creat un ADF que connecta a un exemple de servidor SQL particular i entra amb un usuari concret id i contrasenya i es mostra en aquest fragment:

  <LobSystemInstances>
    <LobSystemInstance Nom="ClaimsInstance">
      <Propietats>
        <Propietat Nom="AuthenticationMode" Tipus="System.string">Passarel</Propietat>
        <Propietat Nom="DatabaseAccessProvider" Tipus="System.string">SqlServer</Propietat>
        <Propietat Nom="Origen de dades de RdbConnection" Tipus="System.string">serveractual real instància</Propietat>
        <Propietat Nom="Catàleg d'inicial de RdbConnection" Tipus="System.string">present inicial catàleg</Propietat>
        <Propietat Nom="RdbConnection integrat de seguretat" Tipus="System.string">SSPI</Propietat>
        <Propietat Nom="Agrupació de RdbConnection" Tipus="System.string">fals</Propietat>

        <!-- Aquests són els valors de la claus: -->
        <Propietat Nom="Identificador d'usuari de RdbConnection" Tipus="System.string">unctual Identificador d'usuari</Propietat>
        <Propietat Nom="Contrasenya de RdbConnection" Tipus="System.string">Contrasenya present</Propietat>
        <Propietat Nom="RdbConnection Trusted_Connection" Tipus="System.string">fals</Propietat>

      </Propietats>
    </LobSystemInstance>
  </LobSystemInstances>

No és una pràctica millor, però és útil per a una configuració ràpida i senzilla per a les proves. Això era sorprenentment difícil d'esbrinar. Mai he trobat un exemple funcional amb keywords de recerca:

  • ADF incrustat userid i contrasenya
  • arrelen identificador d'usuari i contrasenya a adf
  • arrelen identificador d'usuari i contrasenya a adf bdc
  • SharePoint bdc primer
  • SharePoint arrelen identificador d'usuari i contrasenya a adf

</final>

Subscriure's al meu blog.