Categorie Archieven: Uncategorized

SharePoint beste praktijken conferentie, “Beste praktijken,” en de olifant in de kamer

Ik had het geluk te wonen en te presenteren op de Conferentie van vorige week van SharePoint beste praktijken. Ik ben nog steeds nieuw voor de hele spreken "ding" en, eerlijk gezegd, Ik was een beetje nerveus voor de eerste helft terwijl ik zweette die wachten om te spreken van mezelf. Dat soort van zenuwachtig gevoel maakte het een beetje moeilijk voor mij om aandacht te besteden aan de presentatoren (niet dat ik hen negeerde). In plaats daarvan, Ik een beetje meer gericht op de genodigden.

Conferenties altijd mijn racen geest ingesteld en er was een veel nemen in op deze. Deze conferentie was uitstekend. Ik denk dat het was ongewoon op verschillende manieren. Het was niet een zware ontwikkelaar conferentie. Er waren zeker dev delen aan het, maar ik denk dat het was ten minste 60% concentreerde zich op kwesties van niet-dev, misschien zo hoog als 80%. Ik denk dat spreekt tot het evoluerende karakter van de SharePoint-markt. Bedrijven zijn uitvoering van SharePoint in een verscheidenheid van manieren en ze zijn op zoek naar aanwijzingen over hoe om het te doen rechts. En niet alleen aanwijzingen over hoe om functies/oplossingen te maken (die nu, Er is zeer goed opgezet).

Ik denk dat de conferentie was enorm waardevol voor de meeste iedereen die bijgewoond en ik weet dat de organisatoren van plan bent te doen van de conferentie opnieuw begin volgend jaar.

Dit gezegd zijnde, Ik geloof dat er was een gemiste kans waarvan ik hoop dat de volgende conferentie adressen. Ik zeg dat het is een gemiste kans, maar dat is niet een slechte zaak. Het ontdekken van de noodzaak van een Gemeenschap is in en van zichzelf een goede zaak. De Conferentie besproken een aantal best practices in een verscheidenheid van gebieden zoals bestuur, opleiding, eisen verzamelen, zoeken, ontwikkeling, informatie-architectuur, etc. Ik denk dat dat de gemiste kans heeft te maken met de "green field" aannames die ten grondslag ligt aan veel van de beste praktijken.

Wanneer we praten over het groene veld, bedoelen we dat SharePoint is niet gegaan in productie en we met een schone lei beginnen. Dit is ideaal omdat u meteen met beste praktijken beginnen kunt voor het definiëren en beheren van bestuur, informatie-architectuur, etc. Echter … Wat gebeurt er als je al in productie met verscheidene duizend gebruikers (of 10 van duizenden) en u niet te volgen beste praktijken aan het begin? Ik heb bedrijven met … ahem … een zeer oneven informatie-architectuur gebakken in hun omgeving. Ik denk niet dat deze conferentie gaf veel richtsnoeren voor organisaties met dat soort probleem (en ik bedoel niet alleen IA, maar bestuur, zoeken, vele andere gebieden). Natuurlijk, weet dat je hebt een probleem is een groot deel van de oplossing en dat is zeer waardevol.

Ik denk dat dat de online gemeenschap van SharePoint niet veel om aan te pakken dit ofwel gedaan. Ik weet dat ik niet. Het is een zeer moeilijk probleem op te lossen op vele niveaus. Het is technisch moeilijk. Budget-Wise is het moeilijk. Cultureel, het is moeilijk. Echter, het is waarschijnlijk een groter probleem van de echte wereld dan de meeste. Aangezien de conferentie eindigde, Ik heb nagedacht over dit soort problemen en hoe men hen zou oplossen. Er moet een beter antwoord dan worden, "verwijderen en opnieuw installeren" en de Gemeenschap moet het hoofd op het gezicht.

Ik denk dat dit een geweldige kans voor de blogging gemeenschap en ervaren leiders dachten om lay-out sommige aanwijzingen over hoe om te herstellen van hun omgevingen. Ik denk dat er is een klein maar niet-nul risico dat SharePoint met een slecht en blijvende reputatie als gevolg van slecht eindigen kan ontworpen implementaties die als gevolg van slecht bestuur mislukken, IA, etc.

</einde>

Abonneren op mijn blog.

Technorati Tags:

SharePoint Dashboards Online-Seminar

Mijn online vriend, Mark Miller over en Eindgebruiker SharePoint (www.endusersharepoint.com) een gratis één uur werkcollege gericht wordt uitgevoerd, zoals hij altijd doet, op de eindgebruiker van de SharePoint-Gemeenschap. Het vindt plaats op 1 pm EDT. Details hier: http://www.endusersharepoint.com/?p=785

Ik heb zat op een van zijn online-seminar vorige maand en het werd gedaan heel goed en als je geïnteresseerd in wat zeer praktische info over dashboards in SharePoint bent, Ik weet zeker dat het is de moeite waard de 1 uur investeringen.

</einde>

Abonneren op mijn blog.

Technorati Tags: ,

FBA en SQL Server: Een liefdesverhaal

Mijn collega heeft gewerkt aan een webonderdeel in een FBA omgeving. Onder andere, het webonderdeel ophaalt sommige gegevens uit SQL server. Het grote plan voor dit project dicteert dat een DBA gegevensbeveiliging in SQL configureert (in tegenstelling tot een gebruikers-ID insluiten in een SQL-query of sommige andere aanpak).

Het probleem is dat SQL server niet niets over ons milieu FBA weet zodat het niet ons vertrouwen. We hebben dit probleem opgelost, bij gebrek aan een beter woord, handmatig imiteert een AD gebruiker zodat we met SQL verbinden kunnen zodanig dat SQL gegevens niveau beveiliging werken.

Hoewel FBA een ASP is.NETTO functie, Wij mensen SharePoint natie hebben geleerd de verschillende zoekmachines die als u voor FBA opvragen bent, u moet betekenen dat u wilt weten hoe u FBA configureert in SharePoint. Ik kan niet vinden zoeken geen informatie over het inschakelen van een FBA georiënteerde ASP.NET-toepassing om te communiceren met SQL in de manier waarop we nodig hadden.

In de loop van dit onderzoek, We lezen in dit artikel: ASP.NET-imitatie

Meer onderzoek leidde ons naar dit artikel codproject: http://www.codeproject.com/KB/cs/cpimpersonation1.aspx

Welk sociaal assistente ons onze code schrijven, die ik hieronder heb opgenomen. Het is niet het meest elegante spul, maar het werkte. Ik hoop dat u het nuttig vinden.

Hier is de code die voor ons werkte:

beschermd nietig btnSearchCarrier_Click(object afzender, EventArgs e)
 {
 Probeer
 {
 ImpersonateUser iU = Nieuw ImpersonateUser();
 // TODO: Referenties iU.Impersonate vervangen("Domeinnaam", "Gebruikersnaam", "Wachtwoord");

//
 CODE
//

 iU.Undo();
 }
 vangst (Uitzondering ex)
 {

 }
 }

// Met behulp van imitatie klasse zoals hieronder vermelde.

openbare klasse ImpersonateUser
 {
 [DllImport("advapi32.dll", SetLastError = True)]
 openbare statische extern BOOL LogonUser(
 String lpszUsername,
 String lpszDomain,
 String lpszPassword,
 int dwLogonType,
 int dwLogonProvider,
 Ref IntPtr phToken);

 [DllImport("kernel32.dll", CharSet = CharSet.Auto)]
 privé extern statische BOOL CloseHandle(IntPtr handgreep);

 privé statische IntPtr tokenHandle = Nieuw IntPtr(0);
 privé statische WindowsImpersonationContext impersonatedUser;

 // Als u deze code in een dll-bestand opnemen, Zorg om te eisen dat het
 // wordt uitgevoerd met FullTrust.
 [PermissionSetAttribute(SecurityAction.Demand, Naam = "FullTrust")]
 openbare VOID Impersonate(tekenreeks domeinnaam, tekenreeks gebruikersnaam, tekenreeks wachtwoord)
 {
 Probeer
 {

 // Gebruik de onbeheerde LogonUser functie om de gebruiker voor token
 // de opgegeven gebruiker, domein, en wachtwoord.
 Const int LOGON32_PROVIDER_DEFAULT = 0;

 // Deze parameter doorgeven veroorzaakt LogonUser maken een primaire token.
 Const int LOGON32_LOGON_INTERACTIVE = 2;
 tokenHandle = IntPtr.Zero;

 // Stap -1 Bel LogonUser te verkrijgen van een ingang naar een toegangstoken.
 BOOL returnValue = LogonUser(
 Gebruikersnaam,
 Domeinnaam,
 wachtwoord,
 LOGON32_LOGON_INTERACTIVE,
 LOGON32_PROVIDER_DEFAULT,
 Ref tokenHandle); // tokenHandle - nieuwe beveiligingstoken

 Als (== False returnValue)
 {
 int ret = Marshal.GetLastWin32Error();
 Console.WriteLine("LogonUser call failed with error code : " +
 RET);
 gooien nieuwe System.ComponentModel.Win32Exception(RET);
 }

 // Stap - 2
 WindowsIdentity newId = Nieuw WindowsIdentity(tokenHandle);
 // Stap -3
 impersonatedUser = newId.Impersonate();

 }
 vangst (Uitzondering ex)
 {
 Console.WriteLine("Uitzondering is opgetreden. " + ex.Bericht);
 }
 }


 /// <Samenvatting>
 /// Stopt imitatie
 /// </Samenvatting>
 openbare VOID ongedaan maken()
 {
 impersonatedUser.Undo();
 // Gratis de tokens.
 Als (tokenHandle != IntPtr.Zero)
 CloseHandle(tokenHandle);
 }
 }

</einde>

Abonneren op mijn blog.

Technorati Tags:

Toe te voegen aan de Lore: SSRS vertelt Me “rsAccessDenied”, Maar … Ik heb echt toegang

Een paar weken terug, Ik werkte met mijn ontwikkelaar collega op een project van SQL Server Reporting Services plug-in voor MOSS. Hij was de ontwikkeling van een webonderdeel waarmee een fancy front-end voor het goede verslag (het belangrijkste kenmerk wordt een slimme opzoeken op een parameter met verscheidene duizend doorzoekbare waarden achter het).

Dit werkte groot in de ontwikkelomgeving maar in de gebruikers acceptatie testen (UAT) milieu, het zou niet werken. Afvuren van de debugger, We zouden uitzondering details als dit zien:

De gebruiker die machtigingen 'UAT_domainmosssvc' niet volstaan voor het uitvoeren van deze bewerking.(rsAccessDenied).

Als u een live zoekopdracht op de bovenstaande fout, u vindt dat het is vrij gemeenschappelijk. Scarily gemeenschappelijk. De ergste soort gemeenschappelijk omdat er vele verschillende potentiële wortel oorzaken en ieders voorgestelde oplossing "voelt" recht. We waarschijnlijk geprobeerd ze allemaal.

In ons geval, het probleem was dat we een back-up/terugzetten voor DEV had gedaan om UAT. Ergens in de gegevens, iets was nog steeds verwijzen naar "DEV_domain" (in plaats van de bijgewerkte "UAT_Domain"). We een nieuwe site gemaakt, toegevoegd dat het webonderdeel en dat onze probleem opgelost.

Hopelijk zal dit iemand opslaan een uur of twee langs de lijn.

</einde>

Abonneren op mijn blog.

Technorati Tags:

Kleine openbare aankondiging: Windows Live beveiligingsinstellingen en contacteren ruimte eigenaars

Ik heb ontvangen een handvol berichten van personen via de ingebouwde "Stuur een bericht" functie Microsoft biedt live spaces (die ook host is voor mijn blog) elke maand.

Ongeveer een derde van de tijd, deze gebruikers hebben beveiligd hun live Spaces-account zodat ik kan niet antwoorden. Dit is een soort van anti-spam functie ik neem aan dat.

</einde>

Zijn “Onbekende fout” Berichten echt beter dan een stacktrace?

Ik was het lezen van Madhur de blogpost op hoe te stack trace beeldschermen inschakelen en nu ben ik benieuwd: Waarom niet wij altijd een stacktrace weergeven?

Wie kwam met deze regel en waarom we het volgen?

Eindgebruikers zullen weten dat er is iets mis in beide gevallen. Ten minste met een stacktrace, zij kunnen druk op control-printscreen, kopiëren/plakken in een e-mail en stuur het naar het. Dat zou duidelijk minder tijd en inspanning die nodig is om het probleem op te lossen.

</einde>

Technorati Tags:

Dit is de reden waarom ik niet zoals met behulp van Tools Day Zero

http://groups.google.com/group/microsoft.public.sharepoint.portalserver.development/browse_thread/thread/41e8cbe4f15e8b4c/76506ea401403e35?#76506ea401403e35

Als het hulpprogramma is het doen van dingen die u niet begrijpt en mislukt het in stap n van een onbekend aantal stappen, je bent dood in het water…

</einde>

Technorati Tags:

Gebeurtenis-ID 1023: “Windows laden niet extensible teller DLL MSSCNTRS”

UPDATE (04/08/08): Ik schijn te hebben dit probleem opgelost. Vanaf de opdrachtregel, Ik liep "c:\windowssystem32lodctr/r" als per een post over InstallShield lijkt problemen en die te hebben het opgelost voor mij.

Ik heb gemerkt dat de laatste tijd, mijn bureaublad/server fan wordt nooit uitgeschakeld. Ik weet dat het gebruikt om uit te schakelen. Ik nam een moment om te controleren het uit gemerkt dat het een VMware proces liep een consistente 20% gebruik op een van de CPU's. Ik controleerde het gebeurtenislogboek en zag deze fouten in het toepassingslogboek gebeurt tientallen keren per minuut:

Windows laden niet extensible teller DLL UGatherer, de eerste DWORD-waarde in de gegevenssectie is de foutcode van Windows.

Windows laden niet extensible teller DLL UGTHRSVC, de eerste DWORD-waarde in de gegevenssectie is de foutcode van Windows.

Windows laden niet extensible teller DLL MSSCNTRS, de eerste DWORD-waarde in de gegevenssectie is de foutcode van Windows.

Als ik in de details van een van deze berichten boren, Krijg ik dit:

Bron: Perflib

Type: Fout

Categorie: Geen

Gebeurtenis-ID 1023

Ik deed wat onderzoek en er was een indicatie zou een toestemming probleem wat betreft de toegang naar de DLL's in kwestie. Ik speelde rond met dat spul maar kan geen invloed op dingen op een positieve manier dus ik gaf op die.

VMware had geweest treiteraar mij over het uitvoeren van een update voor geruime tijd, dus ik noteerde de versie die ik had geïnstalleerd (blijkbaar bouwen"1.0.1 29996") en deed de update. Dit me een upgrade naar v1.04. Helaas, het did niet positiebepaling naar de kwestie.

Ik kan stoppen met het krankzinnig aantal berichten naar mijn toepassingslogboek te gaan als ik een dienst genaamd "VMware Authorization Service" afsluiten. Hiermee voorkomt u dat mij met behulp van de VMware-software, dus … niet deze een grote optie.

De gastheer-besturingssysteem is Windows XP 64 bits.

Ik denk niet dat dit altijd is gebeurd, maar ik weet niet een bepaalde gebeurtenis die zou hebben geleid tot het.

Dit is waarom ik computers haat.

</einde>

Technorati Tags:

Forumdiscussie: Beste praktijken Compliance in niet-triviale MOSS-omgeving afdwingen

Een collega, "Mark", een potentieel interessante nieuwsgroep discussie zich te concentreren op "tot vaststelling van uitstekende SharePoint Governance vanaf het begin heeft opgestart" voor een 35,000 gebruikersomgeving.

De discussie is hier: http://groups.google.com/group/microsoft.public.sharepoint.portalserver/browse_thread/thread/6d9a738d981af772/1c390b15c5407db6?#1c390b15c5407db6

Pop op over en bij te dragen!

</einde>