Fråga : Beställnings- sökandesida och Impersonation

Hi har

We skapat en beställnings- sökandesida för SharePoint som tar en username på querystringen och därefter försöken för att impersonate den användare, innan det utför sökandet. Vi har konfigurerat den korrekta Kerberos-legitimationen för att låta för impersonationen Etc. emellertid, det missar med efter felet:

" som ett fel uppstod ladda en konfiguration, sparar: Endera en jämn required impersonation gs inte, eller den jämna förutsatt att impersonationen är ogiltig "

using System.Security.Principal;
using Microsoft.Office.Server.Search.Query;

..... stoppar…

name = ”[email protected]”;
WindowsIdentity ID = nya WindowsIdentity (namnge);
WindowsPrincipal p = nya WindowsPrincipal (ID);

//impersonate wic temporarily
WindowsImpersonationContext = ID. Impersonate ();

try
{siteCollection för
SPSite = nya SPSite (nofollow "” för rel= för _blank " ”för es/searchsitecollection för http://intranet.de mo.com/sit”);
stränger queryText = ”hälsningvärlden”;
stränger query = String.Format (”VÄLJER titeln, banan FRÅN räckvidd () VAR \ ”räckvidd \ ”= ' allt platser OCH INNEHÅLLER (”\” {0} \ ””) ”, queryText);

FullTextSqlQuery qry = nya FullTextSqlQuery (siteCollection);
qry.ResultTypes = ResultType.RelevantResults;
qry.TrimDuplicates = falskt;
qry.KeywordInclusion = KeywordInclusion.AnyKeyword;
qry.QueryText = query;
qry.RowLimit = 200;


    ResultTableCollection resultTbls;resultTbls för

= qry. Utför (); resultsTab för

ResultTable = resultTbls [ResultType.RelevantResults]; stunder för
(resultsTab.Read ())
finally
{återställande för
} för
{stuff
för
//Do} för
// vår gammala wic säkerhetscontext
. Ångra ();  
för
} " klar "

Svar : Beställnings- sökandesida och Impersonation

Den nedanföra kodifiera är ”luftar kodifierar” (inte testat). Funderare för stillbild I som den skulle, är bättre att använda en query som baseras på ditt faktiskt, bordlägger i stället för Query2, men slutligen du behöver en lösning som du kan underhålla, så det är din appell.

(°v°)
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
    Dunkel strSQL som stränger
    Dunkel varID
    
    strSQL = ”VÄLJER * FRÅN tbl_survey VAR survey_year='2010'"
    Med CurrentDb.OpenRecordset (strSQL, dbOpenDynaset)
        Gör till .EOF
            varID = DLookup (”LEGITIMATION”, ”Query2”, ”part_rate='52 och ID=” &! LEGITIMATION)
            Om inte IsNull (varID) därefter
                . Redigera
                ! serva = True
                . Uppdatering
            Avsluta om
            .MoveNext
        Kretsa
        . Nära
    Avsluta med
Andra lösningar  
 
programming4us programming4us