SharePoint på ren svenska

Senaste

Dölja varningsikonen i editprofile.aspx

Har precis jobbat i ett projekt där vi skulle slå på att vissa fält från användarprofilerna ska exporteras till AD istället för importeras och iom det lägga främsta ansvaret på användarna att de håller viss information uppdaterad själv. Bland dessa fält var Workphone en av dem. Då upptäckte jag en liten feature/bugg (tolka det som ni vill) att så snart man gör det fältet editerbart så dyker en liten varningstrianel upp som säger ”Om du editerar detta kan det komma att skrivas över”. Den dyker upp även fast du slagit på att detta fält ska exporteras till AD’t istället för att importeras från AD’t.

Som vanligt kliar man sitt hår en stund och så startar man en webbläsare och går till en sökmotor och skriver in några väl valda ord som kan få en att träffa på rätt sökresultat. Till slut hittade jag några bloggar och nyhetsgrupper där de har samma problem och har löst det genom att lägga till ShowWarningIcon=”False” i editpropfile.aspx. Detta fick dock hela den sidan att se knasig ut men lägger man även till ShowMappedIcon=”true” ser det rätt ut, bara att det nu syns en liten diskikon på de data som hämtas från AD’t. Min kund nöjde sig gott med den lösningen. Det går även att göra med ett javascript, men det har jag inte provat själv.

För att fixa detta gör man:

1. Gå till ”Program Files\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\LAYOUTS\editprofile.aspx.”

2. Ta en kopia av filen och spara.

3. Öppna filen editprofile.aspx i t.ex. notepad.

4. Leta upp taggen

<SPSWC:ProfileEditor id="ProfileEditor" runat="server" />

5. Lägg till ShowMappedIcon=”true” och ShowWarningIcon=”False” till denna så att det ser ut som nedan

<SPSWC:ProfileEditor id="ProfileEditor" Runat="server" ShowMappedIcon="true" ShowWarningIcon="False"/>

Så kommer det se ut såhär:

Event id 14 – kan inte ”crawla” en specifik startadress.

Detta problem har jag haft hos flera kunder och det har rört olika sorters webbplatssamlingar; intranät som minwebbplats och den hjälp som står i felmeddelandet är sällan till någon just hjälp. Men visst kan man kolla att sökkontot har ”full read” access till just den webbapplikation det är problem med men oftast är det just detta jag ska beskriva som hjälper:

1. Öppna regedit

2. Gå till HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa

3. Högerklicka på Lsa och välj att skapa nytt ”DWORD Value”.

4. Döp den till DisableLoopbackCheck och tryck enter.

5. Högerklicka på DisableLoopbackCheck och välj att edit.

6. Skriv in 1 i ”Value Data”.

7. Klicka ok för att stänga rutan.

8. Stäng ner regedit och starta evenutellt om servern (jag har inte behövt det någon av gångerna men det kan behövas).

Gå nu till sist in och starta en fullständig crawling och håll koll i eventloggen så ska du se att inga nya event 14 dyker upp :)

Öppna pdf-filer direkt från sharepoint

Ett önskemål hos många kunder är att kunna öppna även sina pdf-filer direkt från intranätet utan att behöva välja att spara ner dem först och sen öppa dem.

Såhär gör du för att fixa det:

Starta PS för Sharepoint i adminlläge (välj att köra programmet som Administrator)

Sen kör du detta script där länken byts ut till länken t. webbplatsen ni vill kunna öppna pdf-filerna:

$app =
 Get-SPWebApplication http://dittIntranät/
$app.AllowedInlineDownloadedMimeTypes.add("application/pdf")
$app.Update()

Eller gå till Manage Webbapplication – markera http://dittintranät/ och välj General settings och sen General settings, kryssa i enligt bilden nedan.

Jag har för mig att detta ska gå utan att ens sköra en iisreset efteråt.

Excel services – ”kan inte öppna arbetsboken”

Härrom dagen stötte jag på ett nytt problem hos en kund som ville titta på sina filer i Excel Services. De har en 2-server farm med en Sharepoint2010-server och en SQL2008-server, båda med OS 2008 R2. Inget special i huvud taget utan en ren standarduppsättning. Problemet var att när de ville titta på sina xlsx-filer fick de upp följande felmeddelande:

Först trodde jag att det berodde på att Excel Services helt enkelt inte var igång, men det var den. Sen tänkte jag att det kanske berodde på behörighet av filen, men så var det inte heller. Efter en stunds letande på internet hittade jag några ledtrådar då jag läste att tjänstekontot för Excel Services måste vara samma som för den webbapplikation man ska köra Excel Services, i mitt fall intranätet.

Så jag gjorde helt enkelt så att jag tog bort Service Application för Excel Services och skapade om den med att köra under samma konto som intranätet, sen fungerade det hur bra som helst.

Så här gjorde jag:

1. Ta bort SA för Excel Services gör jag genom att markera den (utan att klicka på själva länken)

markera SA för Excel Services

2. gå upp i menyfliksystemet och klicka på tabort.

3. Konfirmera att ta bort SA’n.

klicka på "OK"

4. Gå på menyfliksystemet och välja ”New” och välja ”Excel Services”.

menyn för ny Service Application, markera Excel Services

5. Fyll i informationen i dialogrutan som kommer upp. T.ex. enligt följande bild:

Tadaa, nu borde xlsx-filerna visas som de ska i webbläsaren!

Problem med SQLdb som inte vill gå offline

Hur ofta har man inte suttit och väntat och väntat och väntat på att en SQL-databas ska gå offline!?

Här har ni ett bra knep som fungerar för mig, skriv in texten nedan i script-fönstret i SQL:

ALTER DATABASE Din_innehållsdatabas SET OFFLINE WITH
 ROLLBACK IMMEDIATE
 GO

Senast aktiviteter av…

Att visa ett flöde av vad varje användare senast gjort på Intranätet är en jättesnygg funktion. Dessvärre känns inte samhället mogna för en sådan funtktion än. Visst ska vi inte behöva ha något att dölja med vad vi gör på Intranätet eller i vår egen Webbplats på företaget. Men det blir för mycket känsla av ”storebror ser dig” för de flesta.

Så jag brukar erbjuda att dölja denna funktion, framför allt i personsöken.

Ta bort ”Om [namn]” i peopleresult.aspx

1. Gör en sökning av en person, detta för att få upp både rätt sida men också för att få fram ett sökresultat du kan ändra i.

2. Välj att editera sidan.

3. Gå till webbdelen ”Basresultat för personsökning” och välj att editera den.

4. Under avsnittet ”Visningsegenskaper” hittar ni ”Hämtade egenskaper” klicka på knappen XSL-redigeraren.

5. Gå till avsnittet ”RecentContentField” och ta bort följande text:

<li id="RecentContentField">
            <asp:HyperLink
NavigateUrl="javascript:"
ID="{concat('recentcontentlink_',$id)}"
Text="{concat('» ', substring-before($RecentContentLabel, '{0}'),
preferredname, substring-after($RecentContentLabel, '{0}'))}"
runat="server"
PreferredName="{preferredname}"></asp:HyperLink>
            <SEARCHWC:PopupControlExtender
ID="{concat('popupextender_',$id)}" runat="server"

TargetControlID="{concat('recentcontentlink_',$id)}"

PopupControlID="PopupPanelPeopleCore"

PopupShowingScript="{concat('PostbackUserName(this.get_element(),this._popupElement,&quot;',$RecentUpdateTabLabel,'&quot;)')}"
            PopupHiddenScript=""
            HoverDelay="500"
            UnhoverDelay="500"/>
          </li>

6. Välj nu att spara filen, ändringarna i webbdelen. Spara, checka in och publicera sidan.

Ta bort ”Senaste aktiviteter” från profilsidan

1. Gå in på din profilsida som webbplatsadministratör.

2. Redigera profilsidan ”person.aspx” och ta bort webbdelen ”Senaste aktiviteter” som du hittar under första fliken på sidan.

3. I och med att du är webbplatsadministratör kommer detta slå genom på samtliga siter.

På detta vis kan man göra andra ändringar som rör profilerna, vill man t.ex. dölja ”My Content” går man in på Webbplatsinställningar och Navigation och redigerar detta.

SharePoint 2010 med Kerberos

Visst är det så att det går en rysning genom kroppen när man nämner kombinationen SharePoint och Kerberos, inte av välbehag utan mer av den sorten ”kalla kårar”. Om inte, då har man  nog inte satt upp en sådan lösning än ;o). Lite kuriosa, vet ni var namnet Kerberos kommer ifrån? Jo det är namnet på den trehövdade hund som vaktar vid dödsriket i den grekiska mytologin.

Lugn jag har lite tips och råd hur man gör och vad man bör tänka på. Det står idag en hel del om detta men ofta är beskrivningarna långa och krångliga, jag ska göra mitt bästa med att göra denna kort och lätt att förstå.

Det allra första man kan anamma är, SATA, som är bra om man känner att paniken kommer krypande. Här pratar jag inte om SATA-diskar utan en förkortning som används inom dykningen om något händer under ett dyk. Stanna Andas Tänk Agera! Det är inte så svårt egentligen.

Så, nu kör vi!

1. Vi börjar med att ta reda på vilka webbapplikationer som ska köra Kerberos. Skriv upp URL och vilket domänkonto den körs på.

2. Sen loggar vi in på en DC i domänet och öppnar kommandoprompten.

Skriv:

setspn -a HTTP/<DNS HOSTname> Domän\webbappkonto

och sen oxå

setspn -a HTTP/<DNS FQDN> Domän\webbappkonto

Exempel:

setspn -a HTTP/intranet contoso\sp_webbapp
setspn -a HTTP/intranet.contoso.local contoso\sp_webbapp

För de webbapplikationer som inte körs på standardportarna 80 och 443 får man registrera även portnummer:

HTTP/<DNS Host Name>:<port>
HTTP/<DNS FQDN>:<port>

Exempel:

setspn -a HTTP/test:3333 contoso\sp_testwebbapp
setspn -a HTTP/test.contoso.local:3333 contoso\sp_testwebbapp

3. Nu ska vi in i AD User & Computers och högerklicka på varje webbapplikationskonto och välj ”Properties”. Klicka på fliken ”Delegation” som nu dykt upp där bland flikarna.

4. Välj ”Trust this user for delegation to specified services only” och sen även ”Use any authentication protocol”.

5. Klicka på knappen ”Add”.

6. Lägg nu till de tjänster som detta konto får använda. T.ex. HTTP/test:3333  och HTTP/test.contoso.local:3333 för konto contoso\sp_testwebbapp.

7. Nu kan ni gå in på dessa webbapplikationer i Central administration och markera den webbapplikation ni ska ändra till Kerberos på och klicka sen på ”Authentication providers” uppe i Menyfliksystemet.

8. Klicka på länken ”Default” och scrolla ner till avsnittet ”IIS Authentication Settings” där ni nu väljer ”Negotiate (Kerberos)”.

9. Nu ska det vara klart, prova nu att surfa till de webbplatssamlingar ni ställt om till Kerberos och testa detta från en annan dator än SharePoint-servern.

Profilsynkroniseringskontot

Profilsynkroniseringskonto är ett långt ord.

En av de frågor jag brukar stöta på när jag ska ut och installera och konfigurera upp en ny Sharepointmiljö är hur behörigheterna för tjänstekontona i AD’t för SharePoint ska se ut. I mångt och mycket räcker det med att de är vanliga användare och SharePoint själv fixar iordning behörigheterna, men för Farm-kontot och Profilsynk-kontot är det lite annat. Vad gäller farm-kontot är det inte så komplicerat och det ser ut som i tidigare versioner, däremot vad gäller Profilsynk-kontot ser det nu lite annorlunda ut iom att vi nu fått en tvåvägs kommunikation till AD’t (alla AD-konsulter hoppar av glädje ;o)…).

Det man bör tänka på innan man kör igång tjänsten för profilsynkroniseringen är att farm-kontot, som tjänsten ska faktiskt ska köras på, måste ligga med som lokal administratör på den SharePoint-server där synkroniseringen ska köras.

Men detta ska nu handla om hur själva profilsynkroniseringskontot sätts upp, i exemplet använder jag kontot Domän\sp_profilsynk

Så, kommer ni, som SharePoint-konsult, inte in i AD’t och kan göra dessa förändringar som krävs kan ni bara skicka denna beskrivning till AD-konsulterna:

  1. I AD Users & computers, högerklicka på domänet, välj ”Delegate Control” och tryck ”Next”.
  2. Lägg till kontot du valt för profilsynkroniseringen (exempel Domän\sp_profilsynk) och tryck ”Next”.
  3. Välj ”Create a Custom Task to Delegate” och tryck ”Next”.
  4. Tryck ”Next”.
  5. Välj ”Replicating Directory Changes permission” och tryck ”Next”.
  6. Tryck ”Next”.

I många fall räcker det gott med dessa steg, men om det är så att Netbios-namnet inte är samma som FQDN så måste även dessa instruktioner följas:

  1. Starta ADSI Edit (Run: ADSIEdit.msc ).
  2. Koppla upp mot sökvägen till konfigurationen, se exempel nedan:
  3. Högerklicka på konfigen du precis kopplat upp dig mot och välj ”Properties”.
  4. Välj fliken ”Security” och lägg till kontot för synkroniseringen (exempel Domän\sp_profilsyn) och ge kontot rättigheten ”Replicating Directory Changes”.
Följ

Få meddelanden om nya inlägg via e-post.