Arxius per mes: Juny 2008

Juny 2008 Conferència SUGDC — Això és un abric

Vaig assistir a la meva primera vegada Conferència del SharePoint aquest passat cap setmana i va ser una explosió.

Dijous tarda, Conduïa a Virgínia, guiats pel meu novament adquirit $50 Cosa de electrodomèstic plug-in de GPS al meu telèfon. El dispositiu va ser impecable. Després de la unitat de cinc hores, Tenia l'energia per fer una bona cursa sobre el molí de la banda de rodament i llavors, encara més sorprenentment, tenia l'energia al vestíbul per hores de còctel de un orador anunciada. Conferència n00b que estic, 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 🙂

Tenia dificultats per dormir perquè he estat parlant primer divendres AM. Nerviosisme, una sensació que corroeix que necessitava per afegir una diapositiva a la meva presentació i una demostració de gat molt preocupant a Animal Planet em mantenia tard. Ja que vaig anar a dormir tard, Jo, naturalment, es va aixecar d'hora. I afegir una diapositiva bastant detallada arquitectura tècnica. Va ser la pena perquè la 25 minuts de Q&A han estat molt incòmode sense. Vaig tenir la sort d'aconseguir la primera ranura en la pista tècnic. Sahil Malik originalment anava a parlar AM divendres i que anava a parlar dissabte però necessitava canviar vegades. Això va permetre a mi fer la meva presentació i després seure i gaudir de tot el que passa endavant divendres i dissabte.

La presentació va anar bé. Definitivament tinc espai per millorar-lo. Vaig parlar sobre com podem accedir i utilitzar els serveis web d'un flux de treball del SharePoint Designer utilitzant una acció personalitzada. Amb el temps, Ato aquesta informació en la meva sèrie més en EUSP.com per als usuaris finals tractant d'aconseguir el màxim l'ús d'aquesta eina. Que la pota a través meu tobogans i demostració en 35 minuts, a la meva consternació en el moment. Per sort, Q&Una era animat, sens dubte ajudat pel fet que era la matinada abans de dinar. Q&A és la meva part preferida de qualsevol presentació.

Hi havia molts temes interessants i espero al blog sobre ells amb més detall aquesta setmana (Quan fa bon temps, com sempre). Un company de CMS Watch proporcionat una revisió molt crític però molt esperança de posició de SharePoint en el mercat. Una discussió diferent centrat en l'escassetat de recursos de SharePoint i la dificultat que els reclutadors tenen trobar bo talent, que també és "assequible" en aquest mercat molt ajustat. El tipus de CMS veure referit a la piscina de recursos humans de SharePoint és com un "gremi." Estic principalment familiaritzat amb aquest terme en termes MMORPG i em va donar una mica d'emoció, to be honest 🙂

El punt culminant de la conferència era només trobada i arribant a gent he "conegut" en línia per un temps. El millor estava assegut al bar Becky Isserman (MossLover) per a 3 o 4 hores (i que, després vaig acabar bevent durant la nit). Sovint no poden parlar Farscape o Babilònia 5 amb residents de Kansas City.

Bob Fox va ser allà i com de costum, és un remolí de intros de, xerrades i simplement energia frenètic. Ell em va convidar a esmorzar de dissabte amb Sahil Malik i va ser genial.

Dissabte (dia 2), Mike Lotter va arrossegar a la conferència per parlar de l'InfoPath i posteriorment s'integrà Becky al final de la jornada a fer una mena de general Q&Una sessió per sobre 30 per 45 minuts es va centrar principalment en l'InfoPath (Mike) i AJAX (Becky). M'agradaria Becky havia estat capaç d'anar a través de la seva presentació completa/formal, però estic segur que tindré l'oportunitat de veure que un d'aquests dies. Tinc la sensació que va a "colpejar el circuit" Anant endavant.

Jo podria seguir i. Dos darrers punts — la finalitat financera de la conferència era per recaptar fons per la xarxa de Miracle infantil i es va plantejar $5,000. Això va ser increïble. Finalment, Vull donar públicament les gràcies Gary Blatt, Gary Vaughn i Bob Fox per alertar a mi a i permetent-me a parlar en la conferència. Clar, les dos Gary tenia un equip de persones de suport i organització i tots vostès eren impressionants. Que tenia grans expectatives abans vaig anar i va ser millor que jo havia esperat.

Mantenir alerta contra la següent conferència prevista per al 7 de novembre i 8. A banda de gran part del contingut, és fantàstic per reunir-se amb totes aquelles personalitats en línia que he conegut a través de blogs, Refilar, fòrums, etc.

</final>

Subscriure's al meu blog.

Etiquetas de Technorati:

FBA i SQL Server: Una història d'amor

El meu col lega ha estat treballant en un element web a un entorn FBA. Entre altres coses, l'element web tira algunes dades de servidor SQL. El gran pla per a aquest projecte dicta que un DBA configura la seguretat de nivell de dades en SQL (en lloc d'incrustar un Windows Live ID en una consulta SQL o algun altre enfocament).

El problema és que servidor SQL no es sap alguna cosa sobre el nostre entorn FBA així que no puc confiar en nosaltres. Hem resolt aquest problema per, per falta d'una paraula millor, un usuari d'AD manualment infiltrat per tal que es podria connectar a SQL tal que obres de seguretat de nivell de dades SQL.

Encara que FBA és una característica de l'ASP.NET, persones SharePoint Nation ens han ensenyat els diversos motors de cerca que si tu estàs consultant per FBA, vostè ha de significar que volen saber com configurar FBA en SharePoint. No vaig poder trobar trobar qualsevol informació sobre com habilitar un FBA orientat a l'aplicació de l'ASP.NET comunicar-se amb SQL de la manera que necessitàvem.

En el curs d'investigar això, vam tornar a llegir aquest article: Suplantació d'identitat de l'ASP.NET

Més recerca ens va portar a aquest article de codproject: http://www.codeproject.com/KB/cs/cpimpersonation1.aspx

Que va ajudar a nosaltres escriure el nostre codi, que he inclòs per sota. No és la matèria més elegant, però funcionava. Espero que li resulta útil.

Aquí és el codi que treballava per a nosaltres:

protegit btnSearchCarrier_Click de buit(emissor objecte, EventArgs e)
 {
 Provi
 {
 ImpersonateUser iU = nou ImpersonateUser();
 // TODO: Substituir les credencials iU.Impersonate("NombreDeDominio", "Usuari", "Contrasenya");

//
 CODI
//

 iU.Undo();
 }
 trampa (Excepció ex)
 {

 }
 }

// Utilitzant classe de suplantació d'identitat com esmentades sota.

públic classe ImpersonateUser
 {
 [DllImport("advapi32.dll", SetLastError = True)]
 públic estàtica extern bool LogonUser(
 Corda lpszUsername,
 Corda lpszDomain,
 Corda lpszPassword,
 Int dwLogonType,
 Int dwLogonProvider,
 Ref IntPtr phToken);

 [DllImport("kernel32", CharSet = CharSet.Auto)]
 privat extern estàtica bool CloseHandle(Nansa de IntPtr);

 privat estàtica IntPtr tokenHandle = nou IntPtr(0);
 privat estàtica WindowsImpersonationContext impersonatedUser;

 // Si vostè incorporar aquest codi en un fitxer DLL, Assegureu-vos que la demanda
 // funciona amb FullTrust.
 [PermissionSetAttribute(SecurityAction.Demand, Nom = "FullTrust")]
 públic Impersonate de buit(corda nombreDeDominio, nom d'usuari de corda, contrasenya de corda)
 {
 Provi
 {

 // Utilitzeu la funció LogonUser no administrat per aconseguir fitxa per l'usuari
 // l'usuari especificat, domini, i la contrasenya.
 Const Int LOGON32_PROVIDER_DEFAULT = 0;

 // Passant aquest paràmetre provoca LogonUser crear una fitxa primària.
 Const Int LOGON32_LOGON_INTERACTIVE = 2;
 tokenHandle = IntPtr.Zero;

 // Pas -1 Trucar a LogonUser per obtenir una maneta a un testimoni d'accés.
 bool returnValue = LogonUser(
 nom d'usuari,
 nombreDeDominio,
 contrasenya,
 LOGON32_LOGON_INTERACTIVE,
 LOGON32_PROVIDER_DEFAULT,
 Ref tokenHandle); // tokenHandle - nou testimoni de seguretat

 Si (fals = = returnValue)
 {
 Int ret = Marshal.GetLastWin32Error();
 Console.WriteLine("Crida LogonUser fallava amb el codi d'error : " +
 ret);
 tir System.ComponentModel nou.Win32Exception(ret);
 }

 // Pas - 2
 WindowsIdentity newId = nou WindowsIdentity(tokenHandle);
 // Pas -3
 impersonatedUser = newId.Impersonate();

 }
 trampa (Excepció ex)
 {
 Console.WriteLine("Excepció ocorria. " + ex.Missatge);
 }
 }


 /// <resum>
 /// Parades suplantació d'identitat
 /// </resum>
 públic Desfés buit()
 {
 impersonatedUser.Undo();
 // Lliure de les fitxes.
 Si (tokenHandle != IntPtr.Zero)
 CloseHandle(tokenHandle);
 }
 }

</final>

Subscriure's al meu blog.

Etiquetas de Technorati:

Afegint a la tradició: SSRS em diu “rsAccessDenied”, Però … Realment tenen accés

Fa unes setmanes, Jo estava treballant amb el meu col lega de desenvolupador en un projecte de SQL Server Reporting Services plug-in per a la molsa. Va anar desenvolupant un element web que proporciona una fantasia per a l'informe correcte (el tret principal ser un cerca intel ligent en un paràmetre amb diversos valors searchable mil darrere d'ell).

Això treballava gran en l'entorn de desenvolupament, però en les proves d'acceptació de l'usuari (UAT) medi ambient, no funcionaria. Dispara amunt el depurador, volem veure detalls excepció com aquest:

Els permisos concedits a l'usuari 'UAT_domainmosssvc' són insuficients per fer aquesta operació.(rsAccessDenied).

Si fas una cerca en viu a l'error anterior, trobeu que és bastant comú. Aterridorament comú. La pitjor classe de comú perquè té molts arrel potencials diferents causes i se sent la solució suggerida de tots"" dret. Probablement hem intentat tots ells.

En el nostre cas, el problema era que havia fet una còpia de seguretat/restauració de DEV a UAT. En algun lloc de les dades, alguna cosa encara es referia a "DEV_domain" (en comptes de l'actualització "UAT_Domain"). Hem creat un nou lloc, afegit que l element web i que el nostre problema resolt.

Esperançadorament això li estalviarà algú una hora o dues en la línia.

</final>

Subscriure's al meu blog.

Etiquetas de Technorati:

Solució ràpida: Accedir al lloc del SharePoint llança [HttpException (0x 80004005): Sol·licitud cronometrada fora.]

Un dels meus companys de desenvolupador estava treballant en un projecte d'aquesta setmana i es va trobar amb un problema de temps d'espera mentre treballava en la construcció d'algun lloc web boig. Seva part web estava bé, però "sobtadament" un lloc inconnex va molt lent i freqüentment cronometrada fora amb aquest error:

[HttpException (0x 80004005): Sol·licitud cronometrada fora.]

He connectat i va veure que uns quants altres llocs eren molt bé. Sospitava que hi havia alguns elements web ocult a la pàgina i l'ús la confiança ?contingut = 1 tècnica de depuració, De fet vaig trobar 11 elements web a la pàgina, només dues de les quals eren visibles. Fins i tot millor (des de la Perspectiva let's-hope-I-find-something-ugly-here-that-I-can-fix), tres d'aquests elements web tancats tenia un nom de "Error".

Suprimia els elements web (que això mateix va prendre un temps sorprenentment llarg) i que resolia el problema. For today 🙂

</final>

Subscriure's al meu blog.

Etiquetas de Technorati:

Aula formació ràpida és excel. lent

Començo el dia 4 de ràpid del soci Formació dirigida per Larry Kaye aquí de Needham, MA.

Aquesta sessió de dia 5 es desglossa en les classes (3 i 2 dies respectivament) titulat "ràpid ESP: Desenvolupament d'aplicacions de Cerca personalitzada de l'Aliança socis I" i "ràpid ESP: Desenvolupament d'aplicacions de cerca personalitzat per als socis d'Aliança II".

Això és una classe de tipus real boot camp. El material és profund (molt, molt profundes). L'instructor (Larry) clarament sap les seves coses. Altament recomano aquesta formació si està pensant en.

</final>

SharePoint i ràpid — Peanut Butter Cups de Reese empresa apps?

He acabat el dia 2 de ràpida formació de Needham assolellat, MA, i estic ple d'idees (fer que totes les bones classes d'entrenament per a mi). Un aspecte particular de pressa em té pensant i volia escriure mentre era encara fresc i normal del dia a dia "coses" empès això del meu cap.

Ens SharePoint WSS 3.0 / Executors de molsa freqüentment encarar amb un problema difícil amb qualsevol projecte de SharePoint raonablement mida: Com podem obtenir totes les dades sense etiquetar carregats a SharePoint tal que tot encaixa dins de la nostra arquitectura de la informació perfectament dissenyat?

Amb prou freqüència, això no és un problema difícil perquè nosaltres mateixos abast fora de problemes: "No ens preocupem per res més que 3 mesos d'edat." "Ens en encarreguem coses de tot el que sempre amb cerca per paraula clau i anant endavant ho farem el camí correcte…" Etc..

Però, Què passa si nosaltres no abast-nos fora de problemes i estem buscant a 10 de milers o al 100 de milers (o fins i tot milions) de documents de — la càrrega i Etiquetatge del qual és el nostre desig de devot?

RÀPID podria ser la resposta.

Procés de cerca de ràpid inclou un munt de parts que es mouen, però una visió simplificada és la següent:

  • Un procés de rastrejador busca contingut.
  • Es troba el contingut i les mans fora a un procés de corredor que gestiona una piscina de processadors de document.
  • Procés de corredor és les mans fora a un dels processadors de document.
  • El processador de document analitza el document i mitjançant un procés de canonada, analitza la bejeezus del document i les mans fora d'un procés de tipus de constructor d'índex.

En la nau ràpid, tenim un munt de control sobre el document de processament de canonades. Podem barrejar i lligar amb sobre 100 components de canonades i, més interessantment, podem escriure components de la nostra pròpia. Com vaig dir, RÀPID és analitzar documents de totes direccions però diumenge i recull una gran quantitat d'informació útil sobre els documents. Són aquestes persones ràpids boig clarament boig i obsessiu sobre l'anàlisi del document perquè tenen eines i/o estratègies realment classificar documents de.

Així … utilitzant ràpid en combinació amb la nostra pròpia component personalitzat canonada, podem agafar tota aquella informació de context de ràpid i alimentar-lo altra vegada a la molsa. Es podria anar alguna cosa com això:

  • Document s'alimenta en ràpid de molsa.
  • Normal bojos obsessiu document ràpid analitzar i categorització passa.
  • Nostra pròpia component personalitzat canonada cau alguns d'aquella informació de context fora a una base de dades.
  • Un procés de producció pròpia llegeix la informació de context, fa algunes decisions sobre com encaixar aquest document molsa dins nostre IA i marca utilitzant un servei web i el model d'objecte.

Clar, cap tal procés automatitzat pot ser perfecte, però gràcies a l'orientalisme (i la gent possiblement insane-but-in-a-good-way ràpid), podem tenir una veritable lluita disparat a un procés de càrrega massa veritablement eficaç que alguna cosa més que omplir una base de dades SQL amb un grapat de documents amb prou feines searchable.

</final>

Subscriure's al meu blog.

Etiquetas de Technorati: , ,

Conèixer als usuaris finals a www.EndUserSharePoint.com

Mark Miller superiors al http://www.endusersharepoint.com ha construït, en la meva experiència, l'usuari final millor centrat lloc del SharePoint a l ' àmbit. En el darrer mes, s'ha allistà alguns dels bloggers principal d'usuari final centrat al voltant de contribuir a la "portada" sobre una base regular, incloent-hi però no limitat a Paul Culmsee, Chris Quick, i Dessie Lunsford. Té altres folrat i preparat per a contribuir com a seus horaris permeten.

Que va saltar sobre la possibilitat de participar i el meu post inaugural és aquí. Estic escrivint una sèrie sobre com utilitzar el SharePoint Designer per crear solucions de flux de treball business Class. D'acord amb l'enfocament de la EUSP.com, Aquests articles es mantindrà sempre l'usuari final front i al centre.

Jo personalment tendeixen a dividir el món SharePoint en tres grans grups: Consultors de SharePoint, temps complet SharePoint personal desenvolupadors i usuaris finals. Quan escric, Sovint em pregunto, quin d'aquests grups podria estar interessat en el tema? Més sovint, Em acaben d'escriptura per a les dues primeres (tècnic) grups, principalment perquè sóc un consultor-me; sempre és més fàcil i més autèntic d'escriure sobre les coses amb les quals està més familiaritzat a nivell personal.

Com he assenyalat abans, la comunitat d'usuari final és molt, molt més gran que la comunitat tècnica. EUSP.com és de primera categoria i amb ganes el recomano a tots tres grups. Enfocament de làser del lloc és òbviament valuós per als usuaris finals. No obstant això, desenvolupadors i assessors només podem estar millor en la nostra professió si podem entendre i respondre eficaçment a les necessitats dels usuaris finals que servim. I know I need all the help I can get 🙂 Check it out.

</final>

Subscriure's al meu blog.

Etiquetas de Technorati: ,

Invocant SSRS Web serveis de WSS / MOLSA en FBA entorn

Que necessitàvem invocar el CreateSubscription"" mètode a un servei web SSRS que està allotjat en un FBA aconseguit entorn de molsa d'un element web personalitzades. Seguim rebent variacions de:

  • 401: No autoritzats
  • Objecte mogut

eL "objecte mogut" missatge era més interessant perquè estava dient que l'objecte"" (el nostre servei SSRS) creixia"" a login.aspx. Clarament això significava que tenia algun tipus de problema d'autenticació.

Finalment em vaig adonar que jo tenia marcat una entrada de blog per Robert Garret que descrivia com invocar un servei web WSS/molsa de propòsit general viure dins un entorn FBA. Tingueu en compte que jo no puc enllaçar directament a l'article (com de 06/09/08) perquè vol autenticar. Facilito l'enllaç porta a un "tots els missatges" vista i vostè pot localitzar l'article específic per buscar "Accessing MOSS Web Services utilitzant l'autenticació basat en formularis".

Aquí és el codi que treballava per a nosaltres:

ReportingService2006 rs = nul·la; 
// Autenticar L'autenticació auth = nou L'autenticació(); 
autorURL = "http://URL/_vti_bin/Authentication.asmx";
autorCookieContainer =
nou CookieContainer();
LoginResult resultat = nConnecti's(«userid», "contrasenya");
Si (resultat.Codi d'error = = LoginErrorCode.NoError) 
{
// Cap error, Així aconsegueixi les galetes.
Galetes CookieCollection = nCookieContainer.GetCookies(nou URI(autorURL));
Galeta authCookie = galetes[resultat.CookieName];
RS =
nou ReportingService2006();
RS.URL =
"http://Server/_vti_bin/ReportServer/ReportService2006.asmx";
RS.CookieContainer =
nou CookieContainer();
RS.CookieContainer.Add(authCookie);
}
Provi
{
  RS.CreateSubscription(informe, extSettings, desc, eventType, matchData, parameters1);
}
trampa (Excepció ex)
{
  Console.WriteLine(ex.Message.ToString());
}

Jo interpreto les coses funcionin com aquest:

  • Part nostra web necessita marcar el servei d'autenticació i dir, "Hey, Tony, Jo!".
  • Servei d'autenticació respon dient, "Hey, Et conec. Com són els nens? Aquí és un testimoni."
  • Vam trucar al servei d'SSRS i dir, "Tony m'enviava, Aquí és el testimoni."

</final>

Subscriure's al meu blog.

Heu realitzat el seu anàlisi mensual de cerca?

És una bona pràctica, probablement ni tan sols una millor pràctica, revisar els informes de cerca un cop al mes i buscar oportunitats d'afegir les opcions més probables, Sintonitzi el seu thesaurus i potser fins i tot descobrir alguns intel·ligència que en cas contrari s'amaga a la gestió.

Ja és la 3a del mes. Awastin del temps’ 🙂

</final>

Subscriure's al meu blog.

Etiquetas de Technorati:

Cerca Facetada no tanca Sitter més

Jo tenia raó avui per jugar amb el Cerca Facetades CodePlex projecte avui.

Ha estat al voltant una estona, però em resistia a descarregar i utilitzar-lo per les raons habituals (principalment la manca de temps), plus outright fear 🙂

Si vostè està buscant per millorar la cerca i explorar noves opcions, Descarregar i instal·lar-lo quan té una hora o així temps lliure. Seguia les instruccions del manual d'instal·lació i em prenia menys de 20 minuts que s'instal·li i explotació. Proporciona minut valor zero.

Sembla força dur d'estendre. Els autors oferir un recorregut històric per un escenari complex del BDC. Pot estar perdent-lo, però m'agradaria que també proporcionaria un escenari més simple que impliquen una de les propietats preexistents o potser afegint una propietat administrada nova. Ha provo i escriure que jo mateix es mostra en el següent període de temps.

Bottom line — en minuts, vostè pot instal lar, Configureu-lo, use it and add some pretty cool functionality to your vanilla MOSS search and be a hero 🙂

</final>

Subscriure's al meu blog.

Etiquetas de Technorati: