archivi categoria: Uncategorized

SharePoint Best Practices Conference, “Consigliate,” e l'elefante nella stanza

Ho avuto la fortuna di partecipare e presentare alla SharePoint Best Practices conference di scorsa settimana. Io sono ancora nuovo a tutta la "cosa di lingua" e, Francamente, Ero un po' nervoso per il primo semestre, mentre ho sudato fuori in attesa di parlare di me stesso. Quella sensazione di una sorta di nervoso ha reso un po' difficile per me a prestare attenzione ai relatori (non che io li ignorato). Invece, Mi sono un po' più concentrato sui partecipanti.

Conferenze sempre impostato la mia corsa di mente e c'era un sacco di prendere in a questo. Questa conferenza era eccellente. Penso che era insolito in diversi modi. Non era una conferenza di sviluppatori pesante. C'erano certamente dev parti ad esso, ma penso che sia stato almeno 60% incentrato su questioni non dev, forse più in alto 80%. Penso che parla della natura in continua evoluzione del mercato SharePoint. Le aziende stanno implementando SharePoint in una varietà di modi e sono alla ricerca di indicazioni su come farlo bene. E non solo indicazioni su come creare funzioni e soluzioni (che ormai, molto ben stabilita).

Credo che la conferenza è stata estremamente preziosa per la maggior parte tutti coloro che hanno partecipato e so che gli organizzatori hanno intendono di fare la conferenza nuovamente all'inizio del prossimo anno.

Detto questo, Credo che c'era un'occasione persa che spero il prossimi discorsi alla conferenza. Io dico che è un'occasione persa, ma non è una brutta cosa. Alla scoperta di un bisogno di comunità è di per sé una buona cosa. La conferenza ha discusso una serie di procedure consigliate in una varietà di settori quali la governance, formazione, requisiti raccogliendo, ricerca, sviluppo, architettura dell'informazione, ecc. Penso che l'opportunità persa ha a che fare con il campo verde"" ipotesi sottostanti molte delle migliori pratiche.

Quando si parla di campo verde, intendiamo che SharePoint non è andato in produzione e stiamo iniziando con un'ardesia pulita. Questo è l'ideale perché è possibile avviare immediatamente procedure consigliate per la definizione e gestione di governance, architettura dell'informazione, ecc. Tuttavia … cosa succede quando sei già in produzione con diverse migliaia di utenti (o 10 di migliaia) e non seguire le procedure consigliate all'inizio? Ho visto le aziende con … ahem … un molto dispari architettura delle informazioni al forno nel loro ambiente. Non credo che questa conferenza ha fornito molte indicazioni per organizzazioni con quel tipo di problema (e non intendo solo IA, ma governance, ricerca, molte altre zone). Naturalmente, sapendo che hai un problema è una grande parte della soluzione e che è molto prezioso.

Penso che la comunità di SharePoint online non ha fatto molto per risolvere questo problema sia. So che non ho. È un problema molto difficile da risolvere a molti livelli. Tecnicamente è difficile. Bilancio-saggio è difficile. Culturalmente, è difficile. Tuttavia, probabilmente è un problema più grande del mondo reale rispetto alla maggior parte. Dal momento che la conferenza si è conclusa, Ho riflettuto su questi tipi di problemi e come uno dovrebbe risolverli. Ci deve essere una risposta migliore, "disinstallare e reinstallare" e la Comunità deve affrontare testa su.

Penso che questa una grande opportunità per la comunità di blogging ed esperti leader di pensiero per stendere alcune indicazioni su come riparare loro ambienti. Penso che c'è un piccolo ma rischio diverso da zero che SharePoint potrebbe finire con una reputazione cattiva e duratura di conseguenza male architettato implementazioni che non riescono a causa del malgoverno, IA, ecc.

</fine>

Iscriviti al mio blog.

Technorati Tags:

I dashboard di SharePoint seminario Online

Il mio amico online, Mark Miller sopra e Utente finale SharePoint (www.endusersharepoint.com) esegue un seminario gratuito di un'ora mirato, come fa sempre lui, presso la comunità di utente finale di SharePoint. Si svolge a 1 pm EDT. I dettagli sono qui: http://www.endusersharepoint.com/?p=785

Mi sono seduto su uno del suo seminario online il mese scorso ed è stato fatto abbastanza bene e se siete interessati a qualche info molto pratica sul dashboard in SharePoint, Sono sicuro che vale la pena il 1 investimento ora.

</fine>

Iscriviti al mio blog.

Technorati Tags: ,

FBA e SQL Server: Una storia d'amore

Il mio collega ha lavorato su una web part in un ambiente di FBA. Tra le altre cose, la web part estrae alcuni dati da SQL server. Il grande piano per questo progetto impone che un amministratore di database Configura protezione a livello di dati in SQL (al contrario di incorporamento di un ID utente in una query SQL o qualche altro approccio).

Il problema è che SQL server non sa nulla di nostro ambiente FBA così che non puoi fidarti di noi. Abbiamo risolto questo problema da, per la mancanza di una parola migliore, manualmente impersonando un utente di Active Directory in modo che abbiamo potuto collegare a SQL tale che SQL dati livello sicurezza opere.

Anche se FBA è una caratteristica ASP.NET, persone di SharePoint nazione abbiamo insegnato i vari motori di ricerca che se sta eseguendo la query per FBA, deve dire che si desidera sapere come configurare FBA in SharePoint. Non sono riuscito a trovare tutte le informazioni su come attivare un FBA orientata applicazione ASP.NET per comunicare con SQL in modo abbiamo bisogno di trovare.

Nel corso di questa ricerca, abbiamo riletto questo articolo: Rappresentazione di ASP.net

Ulteriori ricerche ci hanno portato a questo articolo codproject: http://www.codeproject.com/KB/cs/cpimpersonation1.aspx

Che ci ha aiutato a scrivere il nostro codice, che ho incluso qui sotto. Non è la roba più elegante, ma ha funzionato. Spero che troverete utile.

Ecco il codice che ha lavorato per noi:

protetti Sub btnSearchCarrier_Click(Object sender, EventArgs e)
 {
 provare
 {
 ImpersonateUser iU = Nuovo ImpersonateUser();
 // TODO: Sostituire le credenziali iU.Impersonate("NomeDominio", "Nome utente", "Password");

//
 CODICE
//

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

 }
 }

// Utilizzando la rappresentazione classe come indicato di seguito.

pubblica classe ImpersonateUser
 {
 [DllImport("advapi32. dll", SetLastError = true)]
 pubblica statico extern bool LogonUser(
 String lpszUsername,
 String lpszDomain,
 String lpszPassword,
 int dwLogonType,
 int dwLogonProvider,
 Rif IntPtr phToken);

 [DllImport("Kernel32. dll", CharSet = Charset)]
 privato extern statico bool CloseHandle(IntPtr handle);

 privato statico IntPtr tokenHandle = Nuovo IntPtr(0);
 privato statico WindowsImpersonationContext impersonatedUser;

 // Se è incorporare questo codice in una DLL, Assicuratevi di chiedere che esso
 // viene eseguito con FullTrust.
 [PermissionSetAttribute(SecurityAction. Demand, Nome = "FullTrust")]
 pubblica Impersonate Sub(String domainName, String userName, password: String)
 {
 provare
 {

 // Utilizzare la funzione LogonUser non gestita per ottenere il token dell'utente
 // l'utente specificato, dominio, e la password.
 const int LOGON32_PROVIDER_DEFAULT = 0;

 // Passando questo parametro determina LogonUser creare un token primario.
 const int LOGON32_LOGON_INTERACTIVE = 2;
 tokenHandle = IntPtr. zero;

 // Passo -1 Chiamare LogonUser per ottenere un handle per un token di accesso.
 bool returnValue = LogonUser(
 userName,
 NomeDominio,
 password,
 LOGON32_LOGON_INTERACTIVE,
 LOGON32_PROVIDER_DEFAULT,
 Ref tokenHandle); // tokenHandle - nuovo token di sicurezza

 Se (false = = returnValue)
 {
 int ret = GetLastWin32Error();
 Console. WriteLine("LogonUser chiamata non riuscita con codice di errore : " +
 RET);
 Throw nuovo System. ComponentModel.Win32Exception(RET);
 }

 // Passo - 2
 WindowsIdentity newId = Nuovo WindowsIdentity(tokenHandle);
 // Passo -3
 impersonatedUser = newId.Impersonate();

 }
 catture (Exception ex)
 {
 Console. WriteLine("Eccezione. " + ex.Messaggio);
 }
 }


 /// <Riassunto>
 /// Rappresentazione di fermate
 /// </Riassunto>
 pubblica void Undo()
 {
 impersonatedUser.Undo();
 // Libera i token.
 Se (tokenHandle != IntPtr. zero)
 CloseHandle(tokenHandle);
 }
 }

</fine>

Iscriviti al mio blog.

Technorati Tags:

Aggiunta per la Lore: SSRS mi dice “rsAccessDenied”, Ma … Veramente avete accesso

Poche settimane fa, Stavo lavorando con il mio collega sviluppatore su un progetto che coinvolge il plug-in SQL Server Reporting Services per MOSS. Stava sviluppando una web part che fornisce un front-end per il rapporto corretto di fantasia (la caratteristica principale di essere una ricerca intelligente su un parametro con diversi valori ricercabili mille dietro di esso).

Questo è stato grande lavoro nell'ambiente di sviluppo, ma nel test di accettazione utente (UAT) ambiente, non avrebbe funzionato. Accensione del fuoco il debugger, Vorremmo vedere Dettagli eccezione come questo:

Le autorizzazioni concesse all'utente 'UAT_domainmosssvc' sono sufficienti per eseguire questa operazione.(rsAccessDenied).

Se fate una ricerca diretta sull'errore di cui sopra, troverete che è abbastanza comune. Spaventosamente comuni. Il peggior tipo di comune perché ha molti diversi potenziali radice causa e soluzione suggerita di tutti "si sente" destra. Probabilmente li abbiamo provati tutti.

Nel nostro caso, il problema era che avevamo fatto un backup/restore di DEV per UAT. Da qualche parte nei dati, qualcosa ancora si riferiva a "DEV_domain" (invece l'aggiornamento "UAT_Domain"). Abbiamo creato un nuovo sito, aggiunto che la parte web e che ha risolto il nostro problema.

Speriamo che questo salverà qualcuno un'ora o due lungo la linea.

</fine>

Iscriviti al mio blog.

Technorati Tags:

Annuncio pubblico minore: Impostazioni di protezione dal vivo di Windows e contattare i proprietari dello spazio

Ricevo una manciata di messaggi da individui tramite il built-in "Invia un messaggio" funzione Microsoft fornisce con spazi dal vivo (che ospita anche il mio blog) ogni mese.

Circa un terzo del tempo, Gli utenti hanno assicurato il loro account di live spaces tale che non posso rispondere. Si tratta di una sorta di funzione di anti-spam, che suppongo.

</fine>

Sono “Errore sconosciuto” Messaggi davvero meglio di una traccia dello Stack?

Stavo leggendo il post sul blog di Madhur su come abilitare Visualizza traccia dello stack e ora mi sto chiedendo: perché non sempre mostrano una traccia dello stack?

Chi è venuto con quella regola e perché lo seguiamo?

Gli utenti finali sapere che qualcosa è sbagliato in entrambi i casi. Almeno con un'analisi dello stack, si può premere control-printscreen, copia/incolla in un messaggio e-mail e inviarlo ad esso. Chiaramente che ridurrebbe il tempo e lo sforzo necessari per risolvere il problema.

</fine>

Technorati Tags:

Ecco perché I Don't come utilizzando strumenti giorno Zero

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

Se lo strumento sta facendo cose che non capisci e quindi non riesce a passo n di un numero sconosciuto di passaggi, You're dead in the water…

</fine>

Technorati Tags:

ID evento 1023: “Impossibile caricare DLL MSSCNTRS contatore flessibile”

AGGIORNAMENTO (04/08/08): Mi sembra di aver risolto questo problema. Dalla riga di comando, Mi sono imbattuto "c:\windowssystem32lodctr/r" secondo una voce parlando di InstallShield problemi e che sembra avere risolto per me.

Ho notato che ultimamente, il mio ventilatore di server e desktop mai si spegne. So che ha usato per spegnere. Ho preso un momento per controllare fuori notato che l'un processo di VMware è stato in esecuzione un coerente 20% utilizzo su uno della CPU. Ho controllato il registro eventi e visto questi errori nel registro dell'applicazione accadendo decine di volte al minuto:

Windows non può caricare il contatore flessibile DLL UGatherer, il primo DWORD nella sezione dati è il codice di errore di Windows.

Windows non può caricare il contatore flessibile DLL UGTHRSVC, il primo DWORD nella sezione dati è il codice di errore di Windows.

Impossibile caricare DLL MSSCNTRS contatore flessibile, il primo DWORD nella sezione dati è il codice di errore di Windows.

Se io forare i dettagli di uno di quei messaggi, Ottengo questo:

Fonte: Perflib

Tipo: Errore

Categoria: Nessuno

ID evento 1023

Ho fatto qualche ricerca e c'era qualche indicazione che potrebbe essere un problema di autorizzazione in materia di accesso alle DLL in questione. Ho suonato in giro con quella roba, ma non avrebbe potuto modificare le cose in modo positivo, così rinunciato a questo.

VMware ha avuto stato fastidioso per me sull'esecuzione di un aggiornamento per parecchio tempo, così buttato giù la versione che avevo installato (a quanto pare "1.0.1 costruire 29996") e fatto l'aggiornamento. Questo mi ha aggiornato alla versione v 1.04. Purtroppo, essa non ha risolto il problema.

Posso fermare il pazzo numero di messaggi andando al mio registro applicazione se chiudo un servizio denominato "Servizio di autorizzazione di VMware". Questo mi impedisce di utilizzando il software VMware, così … non una grande opzione.

Il sistema operativo host è Windows XP 64 bit.

Non credo che questo è sempre successo, ma non ricordo alcun evento particolare che potrebbe avere portato ad esso.

Ecco perché odio il computer.

</fine>

Technorati Tags:

Forum di discussione: Far rispettare migliori pratiche Compliance in ambiente Non banale di MOSS

Un collega, "Mark", ha avviato una discussione newsgroup potenzialmente interessante incentrato sulla "Governance di SharePoint eccellente dall'inizio di stabilire" per un 35,000 ambiente utente.

La discussione è qui: http://groups.google.com/group/microsoft.public.sharepoint.portalserver/browse_thread/thread/6d9a738d981af772/1c390b15c5407db6?#1c390b15c5407db6

Al pop sopra e contribuire!

</fine>