MVP պարգեւատրվել է Sharepoint

MVPLogo

Այս առավոտ, Microsoft փոստով ինձ ասել եմ տվել Microsoft MVP մրցանակի!

It’s a lot to take in all at once. When I’ve had a chance to properly reflect, I’ll share more of my thoughts on the whole thing. I know it’s a subject of great interest to a lot of people.

I’m bursting with excitement. The SharePoint MVP crew is a great group of men and women dedicated to building and expanding the community. I’ve only met a handful and look forward to meeting more and helping to expand and improve community resources over the coming year. It’s going to be a while ride…

</վերջ>

Հունիս 2008 SUGDC Conference — Դա Wrap

Հաճախել եմ իմ առաջին SharePoint համաժողով this past weekend and it was a blast.

Հինգշաբթի կեսօրին, Ես քշում վար Վիրջինիայի, ղեկավարվելով իմ նոր ձեռք $50 GPS appliance plug-in thing to my phone. The device was flawless. After the five hour drive, Ես էներգիա չունեն գեղեցիկ run է քայլք ջրաղացին, ապա, ավելի զարմանալիորեն, had the energy to head to the lobby for an advertised speaker’s cocktail hour. Conference n00b that I am, 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 🙂

Had a hard time sleeping because I was speaking first thing Friday AM. Nervousness, a nagging feeling that I needed to add a slide to my presentation and a very disturbing cat show on Animal Planet kept me up late. Since I went to sleep late, I naturally got up early. I did add a fairly detailed technical architecture slide. It was well worth the effort because the 25 րոպե Q&A would have been very awkward without it. I was lucky to get the first slot in the technical track. Sahil Malik was originally going to speak Friday AM and I was going to speak Saturday but he needed to swap times. This allowed me to do my presentation and then sit back and enjoy everything going forward Friday and Saturday.

The presentation went OK. I definitely have room to improve it. I spoke about how we can access and use web services from a SharePoint Designer workflow using a custom action. Ժամանակի ընթացքում, Ես կապել այս տեղեկությունները իմ սերիայի ավարտվել EUSP.com for End Users trying to get the most use out of that tool. I blew through my slides and demo in 35 րոպե, to my dismay at the time. Բարեբախտաբար, Q&A էր աշխույժ, no doubt helped by the fact that it was early morning before lunch. Q&A is my favorite part of any presentation.

Կային բազմաթիվ հետաքրքիր առարկաները, եւ ես հուսով եմ, բլոգի դրանց մասին առավել մանրամասն այս շաբաթ (ժամանակը թույլ է տալիս, ինչպես միշտ). A fellow from CMS Watch provided a highly critical yet very hopeful review of SharePoint’s position in the market. A different discussion focused on the paucity of SharePoint resources and the difficulty that recruiters have finding good talent that is also "affordable" in this very tight market. The CMS Watch guy referred to the SharePoint human resources pool as being like a "guild." I’m mainly familiar with that term in MMORPG terms and it gave me a little thrill, to be honest 🙂

The highlight of the conference was just meeting and catching up with people I’ve "known" online for a while. The best was sitting at the bar with Becky Isserman (MossLover) համար 3 կամ 4 ժամ (եւ որ, երբ ես ավարտեցի խմելու համար գիշերը). I don’t often get to talk about Farscape կամ Բաբելոն 5 ինչպես KANSAS CITY բնակիչների.

Bob Fox այնտեղ է եւ, ինչպես միշտ, Սա մրրիկը intros, chats and just plain frenetic energy. He invited me to Saturday breakfast with Sahil Malik and that was great.

Շաբաթ (օր 2), Mike Lotter ընդգրկվել իրեն համաժողովին խոսել InfoPath իսկ այնուհետեւ Becky վերջում օրը անել մի տեսակ ընդհանուր Q&Նիստն մոտ 30 դեպի 45 րոպե հիմնականում կենտրոնացած է InfoPath (Միկրոֆոն) եւ AJAX (Becky). I wish Becky had been able to go through her full/formal presentation but I’m sure I’ll get a chance to see that one of these days. I have a feeling she’ll be "hitting the circuit" գնում է առաջ.

I could go on and on. Two last points — the financial purpose of the conference was to raise money for the Children’s Miracle Network and it raised $5,000. That was awesome. Վերջապես, Ես ուզում եմ հրապարակավ շնորհակալություն Գարի Blatt, Gary Vaughn and Bob Fox for alerting me to and allowing me to speak at the conference. Իհարկե, the two Gary’s had a team of people supporting and organizing and all of you were awesome. I had high expectations before I went and it was better than I had hoped for.

Keep on the alert for the next conference scheduled for November 7th and 8th. Aside from some great content, դա սարսափելի է հանդիպում, մինչեւ բոլոր այն անձանց օնլայն դու հայտնի է բլոգեր, ծլվլոց, ֆորում, եւ այլն:.

</վերջ>

Անդամագրվել իմ բլոգում.

Արորդիների Tags:

FBA եւ SQL Server: A Love Story

My colleague has been working on a web part in an FBA environment. Among other things, the web part pulls some data from SQL server. The grand plan for this project dictates that a DBA configures data level security in SQL (ի տարբերություն embedding մի Օգտվող ID մի SQL հարցման կամ որեւէ այլ մոտեցում).

The problem is that SQL server doesn’t know anything about our FBA environment so it can’t trust us. We solved this problem by, բացակայության պատճառով ավելի լավ բառի, manually impersonating an AD user so that we could connect to SQL such that SQL data level security works.

Թեեւ FBA է ASP.NET առանձնահատկություն, Մենք SharePoint Nation մարդիկ սովորել տարբեր որոնման է, որ եթե դուք querying համար FBA, you must mean you want know how to configure FBA in SharePoint. I failed to find find any information on how to enable an FBA oriented ASP.NET application to communicate with SQL in the way we needed.

Ընթացքում ուսումնասիրում, այս, Մենք նորից կարդում այս հոդվածը: ASP.NET Նմանակում

More հետազոտությունը հանգեցրել մեզ այս codproject հոդվածի: http://www.codeproject.com/KB/cs/cpimpersonation1.aspx

Դա օգնեց մեզ համար, մեր համար, which I’ve included below. It’s not the most elegant stuff, սակայն աշխատել. I hope you find it helpful.

Ահա կոդը, որը աշխատել է մեզ համար:

պաշտպանված անվավեր btnSearchCarrier_Click(օբյեկտ առաքիչ, EventArgs ե)
 {
 փորձել
 {
 ImpersonateUser û = նոր ImpersonateUser();
 // TODO: Փոխարինել հավատարմագրերը
 ("DomainName", "UserName", "Password");

//
 CODE
//

 iU.Undo();
 }
 բռնել (Բացառություն են նախկին)
 {

 }
 }

// Օգտագործելով IMPERSONATION դաս, ինչպես նշված է ստորեւ.

հասարակություն դաս ImpersonateUser
 {
 [DllImport("advapi32.dll", SetLastError = ճիշտ)]
 հասարակություն Ստատիկ extern bool LogonUser(
 String lpszUsername,
 String lpszDomain,
 String lpszPassword,
 int dwLogonType,
 int dwLogonProvider,
 ref IntPtr phToken);

 [DllImport("kernel32.dll", Ավելացնել = CharSet.Auto)]
 անձնական extern Ստատիկ bool CloseHandle(IntPtr կարգավորել);

 անձնական Ստատիկ IntPtr tokenHandle = նոր IntPtr(0);
 անձնական Ստատիկ WindowsImpersonationContext impersonatedUser;

 // Եթե ​​դուք այս կոդը պարունակում է մի DLL, Համոզվեք, որ պահանջել, որ այն
 // աշխատում է FullTrust.
 [PermissionSetAttribute(SecurityAction.Demand, Name = "FullTrust")]
 հասարակություն անվավեր մարմնավորելու(լարային DOMAINNAME, լարային Մականուն, լարային եք գաղտնաբառը)
 {
 փորձել
 {

 // Օգտագործեք Unmanaged LogonUser գործառույթ ստանալ օգտվողին նշան է
 // նշված օգտվողին, դոմեյն, եւ ծածկագիրը.
 const int = LOGON32_PROVIDER_DEFAULT 0;

 // Անցնելով այս պարամետրը առաջացնում LogonUser ստեղծելու հիմնական նշան.
 const int = LOGON32_LOGON_INTERACTIVE 2;
 tokenHandle = IntPtr.Zero;

 // Քայլ -1 Զանգի LogonUser ստանալ բռնակի համար մուտքի նշան.
 bool returnValue = LogonUser(
 Մականուն,
 DOMAINNAME,
 գաղտնաբառ,
 LOGON32_LOGON_INTERACTIVE,
 LOGON32_PROVIDER_DEFAULT,
 ref tokenHandle); // tokenHandle - նոր անվտանգության նշան

 եթե (կեղծ == returnValue)
 {
 int RET = Marshal.GetLastWin32Error();
 Console.WriteLine("LogonUser call failed with error code : " +
 RET);
 նետում Նոր System.ComponentModel.Win32Exception(RET);
 }

 // Քայլ - 2
 WindowsIdentity newid = նոր WindowsIdentity(tokenHandle);
 // Քայլ -3
 impersonatedUser = newId.Impersonate();

 }
 բռնել (Բացառություն են նախկին)
 {
 Console.WriteLine("Exception occurred. " + ex.Message);
 }
 }


 /// <ամփոփում>
 /// Դադարում IMPERSONATION
 /// </ամփոփում>
 հասարակություն անվավեր Հետադարձել()
 {
 impersonatedUser.Undo();
 // Ազատել տառերը.
 եթե (tokenHandle != IntPtr.Zero)
 CloseHandle(tokenHandle);
 }
 }

</վերջ>

Անդամագրվել իմ բլոգում.

Արորդիների Tags:

Ավելացնելով, որ գիտության ճյուղ: SSRS Պատմում ՀՏՀ “rsAccessDenied”, Սակայն … Ես իրոք ունենք մուտք

Մի քանի շաբաթ ետ, I was working with my developer colleague on a project involving SQL Server Reporting Services plug-in for MOSS. He was developing a web part that provides a fancy front-end to the report proper (հիմնական առանձնահատկությունը լինելով խելացի Որոնվող մի պարամետր մի քանի հազար Որոնման արժեքների հետեւում է).

Սա աշխատում էր մեծ է զարգացման միջավայրի սակայն օգտագործողի ընդունման փորձարկումների (UAT) միջավայր, it wouldn’t work. Firing up the debugger, մենք տեսնում ենք, բացառությամբ մանրամասները նման:

Թույլտվությունները տրված օգտվողի UAT_domain mosssvc 'բավարար են կատարել այս գործողությունը:(rsAccessDenied).

Եթե ​​դուք կենդանի որոնում վերոնշյալ սխալի, you find it’s quite common. Scarily common. The worst kind of common because it has many different potential root causes and everyone’s suggested solution "feels" իրավունք. We probably tried them all.

Մեր դեպքում,, the problem was that we had done a backup/restore of DEV to UAT. Somewhere in the data, something was still referring to "DEV_domain" (instead of the updated "UAT_Domain"). We created a new site, ավելացրեց վեբ մասը, եւ, որ լուծել ենք մեր խնդիրը.

Հուսով եմ, այս կփրկի մեկին մեկ ժամ կամ երկու ներքեւ գիծ.

</վերջ>

Անդամագրվել իմ բլոգում.

Արորդիների Tags:

Quick fix: Մուտք Sharepoint կայքը նետում [HttpException (0x80004005): Պահանջ, դրված է.]

One of my developer colleagues was working on a project this week and ran into a timeout problem while working on building some crazy web part. His web part was fine, սակայն «Հանկարծ" մի անկապ site շատ դանդաղ է եւ հաճախ է դրված դուրս գալ այդ սխալի:

[HttpException (0x80004005): Պահանջ, դրված է.]

I logged in and saw that several other sites were just fine. I suspected that there were some hidden web parts on the page and using The trusty ?բովանդակության = 1 debug Տեխնիկա, Ես իսկապես գտնում 11 վեբ մասերի վրա էջ, only two of which were visible. Even better (մի let's-ի Հույսի-I-ի գտնել մի բան է տգեղ է, որ այստեղ-I-կարելի է ամրագրել, հեռանկարում), երեքը, այդ փակ վեբ մասերից էր անունը "Սխալ".

Ես այդ ջնջված վեբ մասեր (որն ինքն էլ զարմանալիորեն երկար) and that solved the problem. Այսօրվա համար

</վերջ>

Անդամագրվել իմ բլոգում.

Արորդիների Tags:

Այդ կարգի ԱՐԱԳ Training է Excellent

Ես սկսում օրը 4 Արագ գործընկերը ուսուցման գլխավորությամբ մինչեւ Larry Kaye այստեղ NEEDHAM, MA.

Այս 5 - օրյա նիստը կոտրվել են եւ դասերի (3 իսկ 2 օր համապատասխանաբար) entitled "FAST ESP: Զարգացող Custom Search հայտ Alliance Գործընկերներ I" and "FAST ESP: Developing Custom Search Applications for Alliance Partners II".

Սա իսկական Boot ճամբար տեսակ դաս. Նյութը խորը (շատ, շատ խորը). The հրահանգիչ (Larry) հստակ գիտի իր իրերը. I highly recommend this training if you considering it.

</վերջ>

Sharepoint եւ արագ — որ Reese-ի գետնանուշ կարագ բաժակ են Ձեռնարկությունների apps մասին?

Ես ավարտեցի մինչեւ օրը 2 Արագ պատրաստման մեջ արեւոտ Needham, MA, եւ ես bursting հետ գաղափարներ (որը բոլոր լավ վերապատրաստման դասընթացներ է անել ինձ համար). One particular aspect of FAST has me thinking and I wanted to write it down while it was still fresh and normal day-to-day "stuff" հրելով այն դուրս է իմ գլխին.

Մենք Sharepoint WSS 3.0 / MOSS իրականացնողները հաճախ բախվում է մի կոշտ խնդիր որեւէ հիմնավոր չափի Sharepoint նախագծին: Ինչպես ենք ձեռք բերել բոլոր այն տվյալները untagged բեռնված է Sharepoint այն է, որ այն ամենը համապատասխանում է մեր լավ մշակված տեղեկատվական ճարտարապետության?

Հաճախ չէ, սա այնքան էլ բարդ խնդիր է, որովհետեւ մենք ինքներս շրջանակը դուրս դժվարության: "We don’t care about anything more than 3 months old." "We’ll handle all that old stuff with keyword search and going-forward we’ll do it the RIGHT way…" Etc.

Սակայն, what happens if we can’t scope ourselves out of trouble and we’re looking at 10’s of thousands or 100’s of thousands (կամ նույնիսկ միլիոնավոր) - ը արեւելահայերէն — ի բեռնում իսկ հատկորոշում, որը մեր բարեպաշտ ցանկությունն?

ԱՐԱԳ կարող է լինել պատասխան.

ԱՐԱԳ ի որոնման գործընթացը ներառում է մի շարք հատվածներում ընթանում բայց մի պարզեցված տեսք է սա:

  • A ոջիլ գործընթացը տեսք բովանդակության.
  • Այն բովանդակություն գտնում է, իսկ ձեռքերը այն որպես բրոքեր գործընթաց, որը ղեկավարում է պահոցներ `փաստաթղթային վերամշակման.
  • Բրոքեր գործընթացը ձեռքերը այն մեկին փաստաթղթերի վերամշակման.
  • Փաստաթուղթը պրոցեսոր վերլուծում փաստաթուղթը եւ միջոցով գազատարի հարցում, վերլուծում է bejeezus դուրս փաստաթղթի եւ ձեռքերը այն է ինդեքսը շինարար տիպի գործընթացում.

- Ին starship արագ, we have a lot of control over the document processing pipeline. We can mix and match about 100 խողովակաշար բաղադրիչներ եւ, առավել հետաքրքիր, we can write our own components. Like I say, FAST is analyzing documents every which way but Sunday and it compiles a lot of useful information about those documents. Those crazy FAST people are clearly insane and obsessive about document analysis because they have tools and/or strategies to REALLY categorize documents.

Այնքան … օգտագործելով արագ համակցությամբ, ինչպես նաեւ մեր մաքսային գազատարի բաղադրիչի, we can grab all that context information from FAST and feed it back to MOSS. It might go something like this:

  • Փաստաթուղթը սնվում են արագ են MOSS.
  • Normal Crazy-obsessive ԱՐԱԳ փաստաթուղթը քերականական վերլուծություն եւ բաժին է լինում.
  • Մեր մաքսային գազատարը բաղադրիչը կաթիլներ ոմանք այդ համատեքստում տեղեկատվության մեկնել տվյալների բազայի.
  • A գործընթացը մեր սեփական դիզայնով կարդում համատեքստը տեղեկություններ, կատարում է ինչ - որ որոշումներ, թե ինչպես տեղավորել այդ MOSS փաստաթուղթը մեր ՆԳ եւ նշում այն ​​օգտագործելով վեբ ծառայությունների եւ օբյեկտային մոդելը.

Իհարկե, նման ավտոմատ գործընթացը կարող է լինել կատարյալ, բայց շնորհակալություն է obsessive (եւ հնարավոր է հոգեկան հիվանդ, բայց-ի a-լավ միակողմանի արագ մարդ), մենք կարող ենք ունենալ իրական պայքարն կրակել իսկապես արդյունավետ զանգվածային բեռի գործընթացում, դա ավելին է, քան պարզապես լրացնել մի SQL տվյալների բազա մի փունջ հազիվ - Որոնման փաստաթղթերի.

</վերջ>

Անդամագրվել իմ բլոգում.

Արորդիների Tags: , ,

Ուսուցման մասին վերջնական օգտագործողների At www.EndUserSharePoint.com

Mark Miller ավարտված է http://www.endusersharepoint.com կառուցել, իմ փորձից, the best end-user focused SharePoint site in the ‘sphere. Անցյալ ամսվա ընթացքում, նա ընդգրկված որոշ Վարչապետի վերջնական Օգտվողի հիմնական բլոգերների մոտ նպաստել է առաջին էջում" կանոնավոր կերպով, այդ թվում, սակայն չեն սահմանափակվում Paul Culmsee, Chris Quick, իսկ Dessie Lunsford-. He has others lined up and ready to contribute as their schedules allow.

Ես թռա այն հնարավորություն մասնակցելու, եւ իմ inaugural հաղորդագրությունը այստեղ. I’m writing a series on how to use SharePoint Designer to create first-class business workflow solutions. In keeping with the EUSP.com’s focus, այդ հոդվածներ միշտ պահել Վերջ Օգտվող ճակատը եւ կենտրոն.

Անձամբ ես հակված են բաժանել Sharepoint աշխարհը երեք լայն խմբերի: SharePoint consultants, full-time SharePoint staff developers and end users. When I write, Ես հաճախ եմ հարցնում, որն է այդ խմբերի կարող է թեմայի? Most often, Ես հայտնվում գրել է առաջին երկուսի (տեխնիկական) խմբերը, հիմնականում, որովհետեւ ես ինքս խորհրդատու; it’s always easier and more authentic to write about those things with which you’re most familiar on a personal level.

Ինչպես ես նշել առաջ, վերջը օգտվողին համայնքը հեռու, far larger than the technical community. EUSP.com is top-notch and I heartily recommend it to all three groups. The site’s laser focus is obviously valuable to end users. Սակայն, we developers and consultants can only be better at our profession if we can understand and effectively respond to the needs of the end users we serve. I know I need all the help I can get 🙂 Ստուգել այն.

</վերջ>

Անդամագրվել իմ բլոգում.

Արորդիների Tags: ,

Invoking SSRS վեբ ծառայություններ From WSS / MOSS է FBA միջավայրում

Մենք պետք է վկայակոչել է CreateSubscription" method on an SSRS web service that is hosted in an FBA managed MOSS environment from a custom web part. We kept getting variations of:

  • 401: Ոչ լիազորված
  • Object տեղափոխվել

The "օբյեկտ է տեղափոխվել" ուղերձն այն էր, շատ հետաքրքիր, որովհետեւ ասում էր, որ «օբյեկտը" (մեր SSRS ծառայություն) էր "տեղափոխվել" to login.aspx. This clearly meant we had some kind of authentication problem.

Ես վերջապես հասկացա, որ ես Բլոգի բլոգ գրառում by Robert Garret that described how to invoke a general purpose WSS/MOSS web service living inside an FBA environment. Note that I can’t link directly to the article (դրությամբ 06/09/08) because it wants to authenticate. The link I provide brings you to an "all posts" դիտել եւ դուք կարող եք տեղադրել նաեւ հատուկ հոդված - ի համար "Մուտք դեպի MOSS վեբ Ծառայություններից օգտվելու ձեւերը վրա վավերացման»:.

Ահա կոդը, որը աշխատել է մեզ համար:

ReportingService2006 RS = զրո; 
// Իսկությունը հաստատել Authentication auth = նոր Authentication(); 
auth.Url = "http :/://URL / _vti_bin / Authentication.asmx";
auth.CookieContainer =
նոր CookieContainer();
LoginResult արդյունք = auth.Login("Userid", "Գաղտնաբառ");
եթե (result.ErrorCode == LoginErrorCode.NoError) 
{
// Ոչ սխալ, որպեսզի ստանալ բլիթները.
CookieCollection բլիթները Դուք auth.CookieContainer.GetCookies(նոր Uri(auth.Url));
Cookie authCookie Դուք Տեղեկանիշ[result.CookieName];
RS =
նոր ReportingService2006();
rs.Url =
"http :/://server/_vti_bin/ReportServer/ReportService2006.asmx";
rs.CookieContainer =
նոր CookieContainer();
rs.CookieContainer.Add(authCookie);
}
փորձել
{
  rs.CreateSubscription(հաշվետվություն, extSettings, desc, eventType, matchData, parameters1);
}
բռնել (Բացառություն են նախկին)
{
  Console.WriteLine(ex.Message.ToString());
}

Ես մեկնաբանել բաներ աշխատել այսպես:

  • Մեր վեբ մասը պետք է հավաքել մինչեւ իսկությունը ստուգելու ծառայության եւ ասել,, "Hey, Արիստոկրատական, դա ինձ!".
  • Իսկությունը ստուգելու սպասարկման պատասխան ասելով,, "Hey, I know you. How are the kids? Here’s a token."
  • Մենք կոչ ենք անում մինչեւ SSRS ծառայության եւ ասել,, "Tony ինձ, Ահա կտրոն."

</վերջ>

Անդամագրվել իմ բլոգում.

Արդյոք Դուք կատարել Ձեր ամսական վերլուծություն որոնում?

Դա լավ պրակտիկա, հավանաբար, նույնիսկ լավագույն փորձի, վերանայել Ձեր որոնումը, հաղորդում է ամիսը մեկ անգամ, եւ փնտրում հնարավորություններ ավելացնելու լավագույն խաղադրույքներ, tune your thesaurus and maybe even uncover some business intelligence that is otherwise hidden to management.

It’s already the 3rd of the month. Time’s awastin’ 🙂

</վերջ>

Անդամագրվել իմ բլոգում.

Արորդիների Tags: