Die ausgezeichneten MVP für SharePoint

MVPLogo

Heute Morgen, Microsoft per e-Mail um mir zu sagen, dass ich die Microsoft MVP Award gegeben habe!

Es ist viel auf einmal nehmen. Wann habe ich eine Chance, angemessen widerspiegeln, Ich werde mehr von meinen Gedanken auf die ganze Sache zu teilen. Ich weiß, dass es ein Thema von großem Interesse für viele Menschen ist.

Ich bin mit Aufregung platzen.. Die SharePoint-MVP-Crew ist eine große Gruppe von Männern und Frauen gewidmet, auf- und Ausbau der Gemeinschaft. Ich habe nur eine Handvoll getroffen und freuen uns auf weitere treffen und helfen, zu erweitern und zu verbessern Community-Ressourcen im kommenden Jahr. Es wird eine Weile fahren…

</Ende>

Juni 2008 SUGDC Konferenz — Das ist ein Wrap

Ich besuchte meine erste jemals SharePoint Konferenz am vergangenen Wochenende und es war ein echter Knaller.

Donnerstag Nachmittag, Ich fuhr hinunter nach Virginia, geleitet von meiner neu erworbenen $50 GPS Gerät plug-in Ding auf mein Handy. Das Gerät war einwandfrei. Nach fünf Stunden-Fahrt, Ich hatte die Energie, um einen schönen Run auf die Lauffläche Mühle zu tun und dann, umso überraschend, hatte die Energie, um den Kopf in die Lobby für eine angekündigte Lautsprecher-cocktail-Stunde. Konferenz-n00b, die ich bin, it turned out that the cocktail hour was really a ruse to get speakers to show up and help stuff papers and swag into shoulder bags for conference attendees 🙂

Hatte eine harte Zeit schlafen, weil ich das erste, was AM Freitag sprach. Nervosität, das nagende Gefühl, dass ich brauchte, um meine Präsentation und eine sehr beunruhigende Katze-Show auf Animal Planet eine Folie hinzufügen hielt mich spät. Da ging ich zu spät schlafen, Ich habe natürlich bis früh. Ich habe eine ziemlich detaillierte technische Architektur Folie hinzufügen.. Es war auch der Mühe Wert, weil die 25 Minuten von Q&A hätte ohne es sehr umständlich. Ich war glücklich, den ersten Slot in die technische Strecke zu erhalten. Sahil Malik wollte ursprünglich AM Freitag zu sprechen und ich wollte Samstag sprechen aber er musste mal tauschen. Dies erlaubte mir, meine Präsentation zu tun und dann lehnen Sie sich zurück und genießen alles gehen vorwärts Freitag und Samstag.

Die Präsentation ging OK. Ich habe auf jeden Fall Zimmer zu verbessern. Ich sprach darüber, wie wir können zugreifen und Verwenden von Webdiensten aus einer SharePoint Designer-Workflows mithilfe einer benutzerdefinierten Aktion. Im Laufe der Zeit, Ich werden diese Informationen binden. in meiner Serie über die bei EUSP.com für Endbenutzer, die versuchen, den größten Nutzen aus diesem Tool zu erhalten. Ich blies durch meine Folien und Demo in 35 Minuten, zu meinem Entsetzen zum Zeitpunkt. Zum Glück, Q&A war lebhaft, zweifellos durch die Tatsache geholfen war, dass es am frühen Morgen vor dem Mittagessen. Q&A ist mein liebster Teil jeder Präsentation.

Es gab viele interessante Themen und ich hoffe, Blog über sie ausführlich diese Woche (Zeit erlaubt, wie immer). Mitglied von CMS Watch bereitgestellt eine sehr kritische und dennoch sehr hoffnungsvolle Überprüfung der SharePoints Stellung auf dem Markt. Eine andere Diskussion konzentrierte sich auf den Mangel an SharePoint-Ressourcen und die Schwierigkeit, dass Recruiter haben gute Talente, die auch "erschwinglich ist" in diesem sehr engen Markt. Der CMS Watch Mann gemäß der SharePoint-Personalwesen-Pool als wie eine "Gilde." Ich bin hauptsächlich mit diesem Begriff MMORPG gesehen und es gab mir einen wenig Nervenkitzel, to be honest 🙂

Der Höhepunkt der Konferenz war nur treffen und holt mit Menschen, die ich kenne"" für eine Weile Online. Die besten saß an der Bar mit Becky Isserman (MossLover) für 3 oder 4 Stunden (und dass, Nachdem ich fertig war, für die Nacht trinken). Oft bekomme ich nicht zu reden Farscape oder Babylon 5 mit den Kansas City-Bewohnern.

Bob Fox war es und wie üblich, ist ein Wirbelwind von intros, Chats und einfach nur Frenetischer Energie. Er lud mich zu Samstag Frühstück mit Sahil Malik und das war toll.

Samstag (Tag 2), Mike Lotter schleppte sich zur Konferenz über InfoPath zu sprechen und dann trat er Becky am Ende des Tages eine Art allgemeine Q zu tun&Eine Sitzung für über 30 An 45 Minuten konzentrierte sich hauptsächlich auf InfoPath (Mike) und AJAX (Becky). Ich wünschte, Becky war in der Lage, durch ihre Präsentation voll/Formal gehen aber ich bin sicher, dass ich eine Chance, dass man dieser Tage zu sehen bekommen. Ich habe das Gefühl, sie "die Rennstrecke schlagen sein werde" geht nach vorn.

Ich konnte auf und gehen.. Beiden letzten Punkte — das finanzielle Ziel der Konferenz war, um Geld für der Children's Miracle Network und es ausgelöst $5,000. Das war genial. Schließlich, Ich möchte öffentlich danken Gary Blatt, Gary Vaughn und Bob Fox für Alarmierung mich auf und ermöglicht mir, auf der Konferenz sprechen. Natürlich, die zwei Gary hatte ein Team von Menschen unterstützen und organisieren und Sie alle waren fantastisch. Ich hatte hohe Erwartungen, bevor ich ging und es war besser als ich gehofft hatte.

Immer auf der Hut vor den nächsten Konferenz geplant für November 7th und 8th. Abgesehen von einigen großen Inhalt, Es ist großartig für Treffen mit verschiedenen online Persönlichkeiten, den, die Sie durch Blogs kennen, Twitter, Foren, usw..

</Ende>

Onnieren Sie meinen Blog ab.

Technorati Tags:

FBA und SqlServer: Eine Liebesgeschichte

Mein Kollege hat ein Webpart in einer FBA-Umgebung arbeiten. Unter anderem, das Webpart zieht einige Daten aus SQLServer. Der großen Plan für dieses Projekt vorschreibt, dass ein DBA in SQL Daten Sicherheitsstufe konfiguriert (im Gegensatz zum Einbetten einer Benutzer-ID in einer SQL-Abfrage oder einige andere Ansatz).

Das Problem ist, dass SQLServer nicht weiß nichts über unsere FBA-Umgebung so dass es uns nicht vertrauen können. Wir lösen dieses Problem durch, in Ermangelung eines besseren Wortes, manuell imitieren einen AD-Benutzer, so dass wir eine Verbindung zu SQL, konnte so dass SQL-Daten-Sicherheit-Stufe.

Obwohl FBA ein ASP.NET-Feature ist, Wir SharePoint Nation Menschen gelehrt haben, die verschiedenen Suchmaschinen Wenn Sie FBA Abfragen sind, Sie müssen bedeuten, dass Sie wollen wissen, wie man FBA in SharePoint konfigurieren. Ich konnte nicht finden, finden Sie alle Informationen zum Aktivieren eines FBA orientierte ASP.NET Anwendung mit SQL in der Weise kommunizieren wir brauchten.

Im Zuge der Erforschung dieses, Wir haben wieder diese Artikel lesen: ASP.NET Identitätswechsel

Mehr Forschung führte uns zu diesem Artikel codproject: http://www.codeproject.com/KB/cs/cpimpersonation1.aspx

Das half uns unser Code schreiben, die ich unten aufgeführt habe. Es ist nicht das eleganteste Zeug, aber es hat funktioniert. Ich hoffe, dass Sie es hilfreich.

Hier ist der Code, der für uns gearbeitet:

geschützt void btnSearchCarrier_Click(Objekt-Absender, EventArgse)
 {
 versuchen
 {
 ImpersonateUser iU = Neu ImpersonateUser();
 // TODO: Ersetzen Sie Anmeldeinformationen iU.Impersonate("DomainName", "UserName", "Passwort");

//
 CODE
//

 iU.Undo();
 }
 fangen (Exception ex)
 {

 }
 }

// Verwendung von Identitätswechsel-Klasse, wie unten erwähnt.

öffentliche Klasse ImpersonateUser
 {
 [DllImport("advapi32.dll", SetLastError = wahr)]
 öffentliche statische Ext. Bool LogonUser(
 Zeichenfolge lpszUsername,
 Zeichenfolge lpszDomain,
 Zeichenfolge lpszPassword,
 Int dwLogonType,
 Int dwLogonProvider,
 Ref IntPtr-phToken);

 [DllImport("kernel32.dll", CharSet = CharSet.Auto)]
 Privat Ext. statische Bool CloseHandle(IntPtr handle);

 Privat statische IntPtr-TokenHandle = Neu IntPtr(0);
 Privat statische WindowsImpersonationContext impersonatedUser;

 // Wenn Sie diesen Code in eine DLL einbinden, Achten Sie darauf, daß es verlangen
 // läuft mit FullTrust.
 [PermissionSetAttribute(SecurityAction.Demand, Name = "FullTrust")]
 öffentliche privatevoid Impersonate(Zeichenfolge-domainName, Zeichenfolge Benutzernamen, Zeichenfolge-Passwort)
 {
 versuchen
 {

 // Verwenden Sie die nicht verwaltete Funktion LogonUser, um Benutzer für token erhalten
 // der angegebene Benutzer, Domäne, und Passwort.
 const Int LOGON32_PROVIDER_DEFAULT = 0;

 // Übergabe dieser Parameter bewirkt, dass LogonUser ein primäres Token erstellen.
 const Int LOGON32_LOGON_INTERACTIVE = 2;
 TokenHandle = IntPtr.Zero;

 // Schritt -1 Rufen Sie LogonUser erhalten Sie einen Handle für ein Zugriffstoken auf.
 Bool ReturnValue = LogonUser(
 Benutzername,
 domainName,
 Passwort,
 LOGON32_LOGON_INTERACTIVE,
 LOGON32_PROVIDER_DEFAULT,
 Ref tokenHandle); // tokenHandle - neue Sicherheits-token

 If (false == ReturnValue)
 {
 Int ret = GetLastWin32Error();
 Console.WriteLine("LogonUser-Aufruf ist fehlgeschlagen mit Fehlercode : " +
 Ret);
 werfen neue System.ComponentModel.Win32Exception(Ret);
 }

 // Schritt - 2
 WindowsIdentity NewId = Neu WindowsIdentity(tokenHandle);
 // Schritt -3
 ImpersonatedUser = newId.Impersonate();

 }
 fangen (Exception ex)
 {
 Console.WriteLine("Ausnahme ist aufgetreten. " + Ex.Nachricht);
 }
 }


 /// <Zusammenfassung>
 /// Haltestellen Identitätswechsel
 /// </Zusammenfassung>
 öffentliche void rückgängig()
 {
 impersonatedUser.Undo();
 // Die Token gratis.
 If (tokenHandle != IntPtr.Zero)
 CloseHandle(tokenHandle);
 }
 }

</Ende>

Onnieren Sie meinen Blog ab.

Technorati Tags:

Hinzufügen der Lore: SSRS sagt mir “rsAccessDenied”, Aber … Ich habe wirklich Zugriff

Ein paar Wochen zurück, Ich arbeitete mit meinem Kollegen Entwickler an einem Projekt mit SQL Server Reporting Services-Plug-in für MOSS. Er entwickelte einen Webpart, der Front-End für den richtigen Bericht Lust bereitstellt (Das wichtigste Merkmal wird ein clever-Lookup auf einen Parameter mit mehreren tausend durchsuchbare Werte dahinter).

Dies war groß in der Entwicklungsumgebung, sondern in der Benutzerakzeptanztest tätig. (UAT) Umgebung, Es würde nicht funktionieren. Feuern Sie den debugger, Wir würden Ausnahmedetails wie diese sehen.:

Die Berechtigungen an Benutzer, dass 'UAT_domainmosssvc' zum Ausführen des Vorgangs nicht ausreichen.(rsAccessDenied).

Wenn Sie eine live-Suche auf die obige Fehlermeldung tun, Sie finden, dass es durchaus üblich ist. Erschreckend häufig. Die schlimmste Art von gemeinsamen, da es viele verschiedene mögliche Wurzel hat verursacht und jedermanns Lösungsvorschlag "fühlt" rechts. Wahrscheinlich haben wir versucht sie alle.

In unserem Fall, das Problem war, dass wir ein Backup/Restore der DEV UAT getan hatte. Irgendwo in den Daten, etwas bezog sich noch auf "DEV_domain" (statt die aktualisierte "UAT_Domain"). Wir haben eine neue Website, hinzugefügt, dass das Webpart, und dass unser Problem gelöst.

Hoffentlich wird dies jemand ein oder zwei Stunden auf der ganzen Linie sparen.

</Ende>

Onnieren Sie meinen Blog ab.

Technorati Tags:

Quick Fix: Löst den Zugriff auf SharePoint-Website [HttpException (0X 80004005): Zeitüberschreitung der Anforderung.]

Einer meiner Kollegen Entwickler diese Woche an einem Projekt arbeiten und lief in ein Timeout-Problem während der Arbeit am Gebäude einige verrückte Webpart. Seine Web-Teil war in Ordnung, aber "plötzlich" eine unabhängige Website wurde sehr langsam und häufig mit diesem Fehler Zeitüberschreitung:

[HttpException (0X 80004005): Zeitüberschreitung der Anforderung.]

Ich eingeloggt und sah, dass einige andere Seiten prima waren. Ich vermutete, dass gab es einige versteckte Webparts auf der Seite und mit dem treuen ?Inhalt = 1 Debug-Technik, Ich habe in der Tat finden 11 Webparts auf der Seite, nur zwei davon waren sichtbar. Noch besser (aus Sicht der let's-hope-I-find-something-ugly-here-that-I-can-fix), drei von diesen geschlossene Webparts hatte einen Namen, der "Fehler".

Ich löschte die Webparts (die selbst eine erstaunlich lange gedauert) und das Problem gelöst. For today 🙂

</Ende>

Onnieren Sie meinen Blog ab.

Technorati Tags:

Klasse schnelle Ausbildung ist ausgezeichnet

Ich beginne den Tag 4 schnell ist Partnerschulungen geleitet von Larry Kaye hier in Needham, MA.

Diese 5-Tage-Sitzung ist in Klassen unterteilt. (3 und 2 Tage bzw.) berechtigt "FAST ESP: Entwicklung von benutzerdefinierten Suche Anwendungen für Alliance Partner I" und "FAST ESP: Benutzerdefinierte Suche-Anwendungsentwicklung für Allianzpartner II".

Dies ist eine echte Bootcamp-Typ-Klasse. Das Material ist tief (sehr, sehr tiefe). Der Ausbilder (Larry) klar kennt seine Sachen. Ich empfehle diese Ausbildung, wenn Sie es unter Berücksichtigung.

</Ende>

SharePoint und FAST — die Reese's Peanut Butter Cups von Enterprise Anwendungen?

Ich habe fertig bis Tag 2 SCHNELLE Ausbildung in sonnigen Needham, MA, und ich bin voller Ideen (welche alle gute Ausbildung Klassen tun, um mich). Ein spezieller Aspekt der hat mich schnell denken und wollte ich es aufschreiben, während es noch frisch und normalen täglichen "Zeug war" aus meinem Kopf verdrängt.

Wir SharePoint WSS 3.0 / MOSS-Implementierer stellen häufig eine harte Problem mit jeder vernünftige Größe SharePoint-Projekt: Wie kriegen wir die nicht markierter Daten in SharePoint geladen, so dass sie alle in unserem perfekt gestaltete Informations-Architektur passt?

Oft genug, Das ist so ein schwieriges Problem nicht, weil wir uns aus der Misere Zweck: "Wir kümmern uns nicht um nichts mehr als 3 Monate alt." "Wir werden all das alte Zeug mit Stichwortsuche behandeln und gehen vorwärts wir Mach es richtig…" Etc..

Aber, Was passiert, wenn wir nicht uns Ärger Zweck kann und wir auf 10 Tausenden oder 100's von Tausenden blicken (oder sogar Millionen) docs — das Laden und Tagging ist unser frommer Wunsch?

SCHNELL könnte die Antwort sein.

FASTETEN Suchprozess enthält viele bewegliche Teile aber eine vereinfachte Ansicht ist dies:

  • Ein Crawler-Prozess sucht nach Inhalten.
  • Es findet Inhalte und übergibt es an einen Brokerprozess, der verwaltet einen Pool von Dokumentprozessoren.
  • Brokerprozess übergibt es an eines der Dokumentprozessoren.
  • Der Dokument-Prozessor analysiert das Dokument, und über eine Rohrleitung-Prozess, analysiert die Bejeezus aus dem Dokument und übergibt es an einen Index-Generator Typ Prozess.

Auf das Raumschiff schnell, Wir haben eine Menge an Kontrolle über die Dokumentenverarbeitung Rohrleitung. Wir können mischen und entsprechen zu 100 Pipelinekomponenten und, die meisten interessanterweise, Wir können unsere eigenen Komponenten schreiben.. Wie ich sage, SCHNELL ist Dokumente analysieren, allen Varianten aber Sonntag und viele nützliche Informationen über diese Dokumente kompiliert. Diese verrückte schnell Leute sind eindeutig verrückt und obsessive über Dokumentenanalyse weil sie Werkzeuge bzw. Strategien wirklich Dokumente kategorisieren.

Also … SCHNELL in Kombination mit unseren eigenen benutzerdefinierte Pipelinekomponente verwenden, Wir greifen alle diese Kontextinformationen von FAST und es zurück zu MOSS feed. Es könnte soetwas gehen:

  • Dokument wird schnell von MOSS zugeführt.
  • Normal verrückt-obsessiv schnell Dokument Parsen und Kategorisierung passiert.
  • Unsere eigene benutzerdefinierte Pipelinekomponente Tropfen einige dieser Kontext-Informationen aus einer Datenbank.
  • Ein Prozess von unserer eigenen Design liest die Kontextinformationen, Einige entscheidet über wie man das MOSS-Dokument innerhalb unserer IA passen und markiert sie oben mit einem Webdienst und das Objektmodell.

Natürlich, keine solche automatisierter Prozess kann perfekt aber Dank der obsessiv sein. (und möglicherweise insane-but-in-a-good-way schnell Menschen), Wir haben eine echte Kämpfe Schuss auf eine wirklich effektive Masse Ladeprozess, die mehr als nur eine SQL-Datenbank mit einem Haufen kaum durchsuchbare Dokumente ausfüllen.

</Ende>

Onnieren Sie meinen Blog ab.

Technorati Tags: , ,

Lernen über Endnutzer auf Www.EndUserSharePoint.com

Mark Miller über in http://www.endusersharepoint.com hat, nach meiner Erfahrung, der beste Endbenutzer konzentrierte sich die SharePoint-Website in der "Sphäre. Im letzten Monat, Er hat einige der führenden Endbenutzer konzentriert Blogger rund Beitrag auf der ersten Seite"eingetragen" in regelmäßigen Abständen, einschließlich aber nicht beschränkt auf Paul Culmsee, Chris Quick, und Dessie Lunsford. Er hat andere ausgekleidet eingerichtet und betriebsbereit als ihre Zeitpläne beitragen können.

Ich sprang auf die Chance zu beteiligen und Hier ist meine erste post. Ich schreibe eine Reihe über wie mithilfe von SharePoint Designer erstellen Sie erstklassige Business-Workflow-Lösungen. Im Einklang mit der EUSP.com und der Fokus, Diese Artikel werden die Endbenutzer Front- und Center immer.

Persönlich neige ich dazu, die SharePoint-Welt in drei große Gruppen unterteilen: SharePoint-Berater, Vollzeit-SharePoint-Personal-Entwickler und Endanwender. Wenn ich schreibe, Ich frage mich oft, welche dieser Gruppen an dem Thema interessiert sein könnten? In den meisten Fällen, Ich am Ende für die ersten beiden schreiben (Technische) Gruppen, vor allem, weil ich ein Berater bin; Es ist immer einfacher und authentischer, über diese Dinge zu schreiben, mit denen Sie am meisten vertraut auf einer persönlichen Ebene sind.

Wie erwähnt vor, die End-User-Community ist weit, weit größer als die technische Gemeinschaft. EUSP.com ist einfach erstklassig und ich empfehle es wärmstens für alle drei Gruppen. Die Website Laserfokus ist natürlich wertvoll für Endbenutzer. Jedoch, Wir Entwickler und Berater können nur besser zu unserem Beruf sein, wenn wir verstehen und effektiv auf die Bedürfnisse der Endverbraucher servieren wir reagieren können. Ich weiß, ich brauche alle Hilfe, die ich bekommen kann 🙂 Check it out.

</Ende>

Onnieren Sie meinen Blog ab.

Aufrufen von Webdiensten von SSRS von WSS / Moos in FBA-Umgebung

Wir brauchten, um die "CreateSubscription aufrufen" Methode auf einer SSRS-Webdienst, der in eine FBA gehostet wird verwaltet MOSS-Umgebung von einem benutzerdefinierten WebPart. Wir immer Variationen:

  • 401: Nicht autorisierte
  • Objekt verschoben

Das "Objekt verschoben" Nachricht wurde am interessantesten, weil es, dass sagen war das Objekt"" (Unser SSRS-service) "zog" zu login.aspx. Dies bedeutete natürlich hatten wir eine Art Authentifizierungsproblem.

Schließlich wurde mir klar, dass ich Lesezeichen einen Blog-Eintrag von Robert Garret beschrieben, die wie einen Allzweck-WSS/MOSS-Web-Service Leben innerhalb einer FBA-Umgebung aufgerufen. Beachten Sie, dass ich direkt auf den Artikel verlinken kann nicht (ab 06/09/08) weil es authentifizieren möchte. Der Link, den ich zur Verfügung stellen bringt Sie zu einem "alle-Beiträge" Ansicht und Sie können den bestimmten Artikel suchen, indem suchen "Zugreifen auf MOSS-Webdienste mithilfe von Forms Based Authentication".

Hier ist der Code, der für uns gearbeitet:

ReportingService2006 Rs = NULL; 
// Authentifizieren Authentifizierung Auth = Neu Authentifizierung(); 
auth.URL = "http://URL/_vti_bin/Authentication.asmx";
auth.CookieContainer =
Neu CookieContainer();
LoginResult Ergebnis = auth.Anmeldung("Userid", "Passwort");
If (Ergebnis.ErrorCode == LoginErrorCode.NoError) 
{
// Kein Fehler, So erhalten Sie die cookies.
CookieCollection Cookies = auth.CookieContainer.GetCookies(Neu URI(auth.URL));
Cookie AuthCookie = Cookies[Ergebnis.CookieName];
RS =
Neu ReportingService2006();
Rs.URL =
"http://Server/_vti_bin/ReportServer/ReportService2006.asmx";
Rs.CookieContainer =
Neu CookieContainer();
Rs.CookieContainer.Add(authCookie);
}
versuchen
{
  Rs.CreateSubscription(Bericht, extSettings, DESC, eventType, matchData, PARAMETERS1);
}
fangen (Exception ex)
{
  Console.WriteLine(Ex.Message.ToString());
}

Ich interpretiere Dinge wie diese Arbeiten:

  • Unserer Web-Seite muss der Authentifizierungsdienst DFÜ und sagen, "Hey, Tony, Es ist mir!".
  • Authentifizierungsdienst Antworten sagen, "Hey, Ich kenne dich. Wie sind die Kinder? Hier ist ein Token."
  • Wir rufen die SSRS-Service und sagen, "Tony schickte mir, Hier ist das Token."

</Ende>

Onnieren Sie meinen Blog ab.

Sie haben Ihre monatliche Suche-Analyse durchgeführt?

Es ist eine gute Praxis, wahrscheinlich sogar ein Best Practice, Überprüfen Sie Ihre Suche Berichte einmal im Monat und suchen Sie nach Möglichkeiten, um beste Suchergebnisse hinzuzufügen, Optimieren Sie Ihre Thesaurus und vielleicht entdecken Sie sogar einige Frühaufklärung, die sonst zum Management versteckt ist.

Es ist bereits der 3. des Monats. Zeit des awastin’ 🙂

</Ende>

Onnieren Sie meinen Blog ab.

Technorati Tags: