none
Profile Synchronization

    Frage

  • Hallo zusammen, ich habe das Problem, dass die User-Synchronization nicht funktioniert. Es werden keine Benutzer vom AD in den Sharepoint Server synchronisiert (2010 pS1)

    Aus dem MS-Artikel  http://support.microsoft.com/kb/2520394 habe ich folgendes durchgeführt:

    In order to address this problem, delete and re-create the user profile service application proxy by using the following Powershell commands:

    In order to address this problem, delete and re-create the user profile service application proxy by using the following Powershell commands:

    a) Remove the user profile service application proxy:
    $proxy = Get-SPServiceApplicationProxy | where {$_.typename -eq "User Profile Service Application Proxy"}
    Remove-SPServiceApplicationProxy -Identity $proxy -confirmfalse

    b) Create the user profile service application proxy:
    $upa = Get-SPServiceApplication | where {$_.name -eq "<name here>"}
    New-SPProfileServiceApplicationProxy -Name<proxyName> -Uri $upa.uri.absoluteURI

    Nun habe ich das Problem, dass ich  den user profile service application proxy nicht mehr erstellen kann:

    Ich wäre sehr dankbar, wenn mich jemand unterstützen könnte
    Besten Dank

    Mario

    -------------------------------------------------------------------------------------
    Löschung: User Profile Service
    -------------------------------------------------------------------------------------

    PS C:\Users\administrator.CREALOGIX> Get-SPServiceApplicationProxy

    DisplayName          TypeName             Id
    -----------          --------             --
    Managed Metadata ... Managed Metadata ... 5e36d1e6-2cf9-43a9-a172-7bb3bb65da36
    Search Service Ap... Search Service Ap... 43377701-b86a-46f4-baed-e8661fee4e16
    Application Disco... Application Disco... 7444a0f9-ff42-4fe3-851a-1ff4e609104f
    User Profile Service User Profile Serv... 9e295c7c-61bb-4cb2-9ca0-23ce5435e6dd
    WSS_UsageApplication Usage and Health ... 50d98eb5-bae8-4a92-9e29-b2b9a87f29dc

    PS C:\>
    PS C:\> $proxy = Get-SPServiceApplicationProxy | where {$_.typename -eq "User Profile Service Application Proxy"}
    PS C:\> Remove-SPServiceApplicationProxy -Identity $proxy -confirmfalse
    Remove-SPServiceApplicationProxy : A parameter cannot be found that matches parameter name 'confirmfalse'.
    At line:1 char:64
    + Remove-SPServiceApplicationProxy -Identity $proxy -confirmfalse <<<<
        + CategoryInfo          : InvalidArgument: (:) [Remove-SPServiceApplicationProxy], ParameterBindingException
        + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.SharePoint.PowerShell.SPCmdletRemoveServiceApplicationProxy

    PS C:\> Remove-SPServiceApplicationProxy -Identity $proxy

    Confirm
    Are you sure you want to perform this action?
    Performing operation "Remove-SPServiceApplicationProxy" on Target "UserProfileApplicationProxy Name=User Profile Service".
    [Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "Y"): y
    PS C:\> get-SPServiceApplicationProxy

    DisplayName          TypeName             Id
    -----------          --------             --
    Managed Metadata ... Managed Metadata ... 5e36d1e6-2cf9-43a9-a172-7bb3bb65da36
    Search Service Ap... Search Service Ap... 43377701-b86a-46f4-baed-e8661fee4e16
    Application Disco... Application Disco... 7444a0f9-ff42-4fe3-851a-1ff4e609104f
    WSS_UsageApplication Usage and Health ... 50d98eb5-bae8-4a92-9e29-b2b9a87f29dc

    -------------------------------------------------------------------------------------
    Erstellung : User Profile Service (geht nicht)
    -------------------------------------------------------------------------------------

    PS C:\> $upa = Get-SPServiceApplication | where {$_.name -eq "User Profile Service Application Proxy"}
    PS C:\> New-SPProfileServiceApplicationProxy -Name"User Profile Service Application Proxy" -Uri $upa.uri.absoluteURI
    >>
    PS C:\> New-SPProfileServiceApplicationProxy -Name"User Profile Service Application Proxy" -Uri $upa.uri.absoluteURI
    >>
    PS C:\> New-SPProfileServiceApplicationProxy -Name "User Profile Service Application Proxy" -Uri $upa.uri.absoluteURI
    New-SPProfileServiceApplicationProxy : Cannot validate argument on parameter 'Uri'. The argument is null. Supply a non-null argument and tr
    y the command again.
    At line:1 char:89
    + New-SPProfileServiceApplicationProxy -Name "User Profile Service Application Proxy" -Uri <<<<  $upa.uri.absoluteURI
        + CategoryInfo          : InvalidData: (:) [New-SPProfileServiceApplicationProxy], ParameterBindingValidationException
        + FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.Office.Server.UserProfiles.PowerShell.SPCmdletNewProfileServiceAp
       plicationProxy

    PS C:\> $upa = Get-SPServiceApplication | where {$_.name -eq "User Profile Service Application Proxy"}
    PS C:\> New-SPProfileServiceApplicationProxy -Name"User Profile Service Application Proxy" -Uri $upa.uri.absoluteURI
    >> New-SPProfileServiceApplicationProxy -Name"User Profile Service Application Proxy" -Uri $upa.uri.absoluteURI

    ------------------------------------------------------------------------------------------------------------------------


     


    System Engineer

    Dienstag, 28. Februar 2012 20:29

Antworten

  • Hi,

    ja...aber wir nähern uns. :-)
    Dein User Profile Dienst heisst "User Profile Service", die entsprechende Zeile im Script muss also heissen:
    PS C:\> $upa = Get-SPServiceApplication | where {$_.name -eq "User Profile Service"}

    Dann ist mir gerade aufgefallen (habe es erst übersehen): Du hast den falschen Text ersetzt. Die zweite Zeile muss weiterhin so aussehen:
    PS C:\> New-SPProfileServiceApplicationProxy -Name "User Profile Service Application Proxy" -Uri $upa.uri.absoluteURI

    Die Fehlermeldung bei Dir resultiert daraus, das $upa nicht sauber gesetzt ist (ich vermute mal NULL ist), sprich die erste Zeile findet nichts (was am falschen Namen liegt bzw. hoffentlich lag).

    HTH,
      Daniel


    --
    Daniel Wessels
    MVP SharePoint Server: Architecture

    Dienstag, 28. Februar 2012 22:09

Alle Antworten

  • Hi,

    Du hast in der Zeile

    $upa = Get-SPServiceApplication | where {$_.name -eq "User Profile Service Application Proxy"}

    bei der Erstellung den Namen des Proxys stehenm dort müsste aber der Name der Service Application rein (mit hoher Wahrscheinlichkeit "User Profile Service Application").
    Ich würde das ncohmal prüfen.

    HTH,

      Daniel


    --
    Daniel Wessels
    MVP SharePoint Server: Architecture

    Dienstag, 28. Februar 2012 20:59
  • Hallo Daniel, besten Dank für dein Tipp, hab's versucht jedoch ohne Erfolg.

    Mario

    ------------------------------------------------------

    PS C:\> $upa = Get-SPServiceApplication | where {$_.name -eq "User Profile Service Application Proxy"}
    PS C:\> New-SPProfileServiceApplicationProxy -Name "User Profile Service Application" -Uri $upa.uri.absoluteURI
    New-SPProfileServiceApplicationProxy : Cannot validate argument on parameter 'Uri'. The argument is null. Supply a non-null argument and t
    y the command again.
    At line:1 char:83
    + New-SPProfileServiceApplicationProxy -Name "User Profile Service Application" -Uri <<<<  $upa.uri.absoluteURI
        + CategoryInfo          : InvalidData: (:) [New-SPProfileServiceApplicationProxy], ParameterBindingValidationException
        + FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.Office.Server.UserProfiles.PowerShell.SPCmdletNewProfileServiceAp
       plicationProxy

    -----------------------------------------


    System Engineer

    Dienstag, 28. Februar 2012 21:10
  • Schade...wäre aber auch zu einfach gewesen. :-)

    Was kommt bei folgender Zeile raus:
    Get-SPServiceApplication | fl name

    bzw. kannst Du auch etwas gröber filtern:
    Get-SPServiceApplication | where {$_.name -match "Profile"} | fl name

    /Daniel


    --
    Daniel Wessels
    MVP SharePoint Server: Architecture

    Dienstag, 28. Februar 2012 21:38
  • ... ja wäre zu schön gewesen; hier mein output:

    -----------------------------------------------------

    PS C:\> get-SPServiceApplication | fl name

    Name : Managed Metadata Service

    Name : SecurityTokenServiceApplication

    Name : Topology

    Name : WSS_UsageApplication

    Name : 963eb409-1f27-4d7b-a84a-5e46d670f63c

    Name : User Profile Service

    Name : Search Service Application

    ---------------------------------------------------
    PS C:\> get-SPServiceApplication | where {$_.name -match "Profile"} | fl name

    Name : User Profile Service
    --------------------------------------------------

    Mario


    System Engineer

    Dienstag, 28. Februar 2012 22:04
  • Hi,

    ja...aber wir nähern uns. :-)
    Dein User Profile Dienst heisst "User Profile Service", die entsprechende Zeile im Script muss also heissen:
    PS C:\> $upa = Get-SPServiceApplication | where {$_.name -eq "User Profile Service"}

    Dann ist mir gerade aufgefallen (habe es erst übersehen): Du hast den falschen Text ersetzt. Die zweite Zeile muss weiterhin so aussehen:
    PS C:\> New-SPProfileServiceApplicationProxy -Name "User Profile Service Application Proxy" -Uri $upa.uri.absoluteURI

    Die Fehlermeldung bei Dir resultiert daraus, das $upa nicht sauber gesetzt ist (ich vermute mal NULL ist), sprich die erste Zeile findet nichts (was am falschen Namen liegt bzw. hoffentlich lag).

    HTH,
      Daniel


    --
    Daniel Wessels
    MVP SharePoint Server: Architecture

    Dienstag, 28. Februar 2012 22:09
  • ... Hallo Daniel, super es hat funktioniert wow ... vielen herzlichen dank !!! Was ist das überhaupt für ein Service, sieht man den nur mit der PS ?

    Gr

    Mario

    -----------------------

    PS C:\> get-SPServiceApplication | where {$_.name -match "Profile"} | fl name
    Name : User Profile Service

    PS C:\> $upa = Get-SPServiceApplication | where {$_.name -eq "User Profile Service"}
    PS C:\> New-SPProfileServiceApplicationProxy -Name "User Profile Service Application Proxy" -Uri $upa.uri.absoluteURI

    Name                 Type                 Id
    ----                 ----                 --
    User Profile Serv... User Profile Serv... d3896a6a-7d05-44b6-96ee-8215aa3aae93

    -------------------------


    System Engineer

    Dienstag, 28. Februar 2012 22:21
  • Hi,

    freut mich zu hören.
    Der Dienst ist das, was Du in der Zentraladministration unter Dienste siehst.

    Das liegt an der grundsätzlichen Architektur:
    jeder Webserver in SPS hat die Service Proxies zu allen Diensten, der Proxy ist dann dafür verantwortlich die Anfrage an den Server weiterzuleiten, auf dem der eigentliche Dienst dann läuft (Du kannst die Dienste halt mehr oder weniger beliebig skalieren, indem Du sie auf verschiedene/eigene Server auslagerst...ein paar Rahmenbedingungen sind natürlich zu beachten, aber das ginge hier zu weit).

    Um einen neuen Proxy anzulegen, muss Du halt vorher den Dienst finden und das schlug fehl.

    Noch eine Anmerkung zu Deinem Script: Du hast da derzeit noch "-match" drin stehen, das klappt in Deinem Fall, weil Du nur einen Dienst hast, der "Profile" im Namen hat, grunsätzlich solltest Du den "-eq" Parameter nehmen, wie bei mir beschrieben, denn bei "match" könnten mehrere Dienste zurückkommen und dann weiß er  nicht, welchen Du meinst.

    Gruß,
      Daniel


    --
    Daniel Wessels
    MVP SharePoint Server: Architecture

    Dienstag, 28. Februar 2012 22:29
  • Hallo Daniel, danke für die Erklärungen. Du also so:

    PS C:\>  get-SPServiceApplication | where {$_.name -eq "User Profile Service"} | fl name

    Name : User Profile Service

    Jetzt habe nur noch das Problem, dass der dienst nicht hoch kommt ... sorry das ich dich noch weiter belästige.

    Mario


    System Engineer

    Dienstag, 28. Februar 2012 22:43
  • Hi,

    OK..den müsstest Du starten.

    Aber bevor Du das machst, ein paar Fragen:
    Lief der User Profile Dienst schon mal?
    Wenn ja, wie hast Du den eingerichtet? Durch den Config Wizard aus der Zentraladministration oder manuell?
    Wie viel arbeit steckt bisher in der Config der Profile?

    /Daniel

    PS: Keine Sorge, dafür sind die Foren da. Wenn ich keine Zeit hätte, würde ich nicht antworten. ;-)


    --
    Daniel Wessels
    MVP SharePoint Server: Architecture


    Dienstag, 28. Februar 2012 22:47
  • ... habe schon versuch zu starten. Der Dienst lief schon mal, resp. wurde in der Zentraladministration als gestartet angezeigt, die Services FIM Service & FIM Sync Service waren auf Automatic / gestaret. Jetzt stehen sie auf deaktiviert. Wir hatten allerdings das problem, dass die Benutzerprofile nicht mehr aktualisiert wurden. Ich denke seit dem der server auf sp2010 läuft, hat der sync nicht mehr richtig funktioniert. Die installation hat ein entwickler von uns gemacht, dieser hat aber die Firma verlassen und alles der IT übergeben :-( nun können alles reparieren. Was meinst du mit viel Arbeit in den Profilen ?

    Gruss Mario


    System Engineer

    Dienstag, 28. Februar 2012 23:09
  • Hi,

    Oh...verstehe.
    Wenn es wirklich nur um einen Standard-AD-Import geht, dann würde ich Dir in diesem Fall empfehlen, den UPS komplett neu aufzusetzen. Geh in die Service Applications, lösche dort alles, was Du zum User Profile Sync findest. Anschließend stelle sicher, das beide Dienste angehalten sind (der eine steht ja eh schon ;-)).

    Dann fang von vorne an. Aber Achtung: UPS ist eine Zicke.
    Es gibt einen TechNet-Artikel dazu:
    http://technet.microsoft.com/en-us/library/ee721049.aspx

    Geh diesen einmal komplett trocken durch, um das alles zu verstehen (sind ein paar Dinge, die da wichtig sind) und folge ihm dann Schritt für Schritt. Dann sollte der auch wieder sauber sein.

    Gruß,
      Daniel


    --
    Daniel Wessels
    MVP SharePoint Server: Architecture

    Dienstag, 28. Februar 2012 23:36
  • Hallo zusammen,

    ich habe den UPS neu aufgesetzt. Einmal auf einer Testmaschine und einmal auf dem Produktiven Server. Auf der Testmaschine läuft der Import einwandfrei, 270 Profile importiert. Hingegen auf dem Produktiven System werden nur 59 Porfile importiert. Merkwürdig ist, dass der Synchronization Service Manager auf der Testmaschine mit dem Domainadmin aufgestartet werden kann, im produktiven System nur mit dem Account, welcher die beiden Service "FIM Service" und "FIM Sync Service" laufen ( sp_int_farm), obwohl auch auf der Testmaschine die Dienste unter dem gleichen Account (sp_int_fram) am laufen sind. Wie bringe ich dem Produktiven System bei alle Profile zu importieren? Auffällig ist, das der SSM unter export MOSS_Export_<xxxx> 193 errors anzeigt (siehe Anhang). Kann das etwas mit dem zu tun haben ?

    Gruss Mario

    MOSS_EXPORT


    System Engineer

    Montag, 12. März 2012 22:59
  • Hi,

    den SSM solltest Du in beiden Fällen mit dem User starten können, mit dem Du den SPS installiert hast.
    Das ist unabhängig vom Domänen-Admin (der Setup-User sollte auch auf keinen Fall einer sein).

    Der Import wird dem User durchgeführt, den Du bei der Einrichtung der Domänenverbindung angibst.

    In der Annahme, dass auf beiden Systemen der gleiche ist:
    Wie lautet denn die Fehlermeldung aus dem SSM? Steht parallel etwas im Eventlog oder ULS Log?
    Steht evtl. auch was in dem Eventlog auf dem DC? Und in dem Zusammenhang: welche Version haben Dein DC und Dein AD?

    /Daniel


    --
    Daniel Wessels
    MVP SharePoint Server: Architecture

    Dienstag, 13. März 2012 22:12
  • Hallo Daniel,

    - die Domänenverbindung wird bei beiden Servern mit dem gleichen Benutzer erstellt.

    - im event log von DC sehe ich nur eine Warnung: event 1530 User Profile Service. Dies hat, denke ich nichts mit dem User Profil import von Sharepoint zu tun.

    - DC:  Win2008 R2 Standard SP1, AD: Domain functional level 2008 R2, Forest functional level 2008 R2

    - wo schreibt der SSM sein log hin ?

    - http://imperfectit.blogspot.com/2011/10/sharepoint-2010-user-profile.html was häst du davon ? Soll ich die patches installieren ?

    Gruss Mario

    auf dem Sharepoint server im eventlog viele Event 6801 Meldungen:

    Event 6801 FIMSynchronizationService
    ---------------------------------------------

    The extensible extension returned an unsupported error.
     The stack trace is:
     
     "System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> Microsoft.Office.Server.UserProfiles.InvalidValueException: The property value was invalid.  This could be caused by invalid non-text characters.
       at Microsoft.Office.Server.UserProfiles.UserProfile.Commit()
       at Microsoft.Office.Server.UserProfiles.UserProfile.BulkPropertiesUpdate(Int64 importExportId, Hashtable properties, String strAccountName)
       at Microsoft.Office.Server.UserProfiles.ProfileImportExportService.UpdateWithProfileChangeData(Int64 importExportId, ProfileChangeData[] profileChangeData)
       --- End of inner exception stack trace ---
       at System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
       at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
       at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
       at Microsoft.Office.Server.WebServiceDirectProxy.WebMethodInfo.Invoke(Object webServiceInstance, Object[] args)
       at Microsoft.Office.Server.WebServiceDirectProxy.Invoke(String methodName, Object[] args)
       at Microsoft.Office.Server.UserProfiles.ManagementAgent.ProfileImportExportDirect.UpdateWithProfileChangeData(Int64 importExportId, ProfileChangeData[] profileChangeData)
       at Microsoft.Office.Server.UserProfiles.ManagementAgent.ProfileImportExportExtension.Microsoft.MetadirectoryServices.IMAExtensibleCallExport.ExportEntry(ModificationType modificationType, String[] changedAttributes, CSEntry csentry)
    Forefront Identity Manager 4.0.2450.34"


    System Engineer

    Dienstag, 13. März 2012 23:26
  • hallo zusammen, wo und wie kann ich ein Ticket (Call) bei Microsoft eröffen. Wir haben einen Volumen License Vertrag, da sollten ja eine Calls kosten los enthalten sein oder bin ich da falsch ? Ich das teil zum laufenbekommen !

    Mario


    System Engineer

    Donnerstag, 15. März 2012 08:26
  • Hallo Mario,

    mit ULS meinte ich das Log von SharePoint. Um dieses zu lesen, nimmst Du am besten den ULSViewer:
    http://archive.msdn.microsoft.com/ULSViewer

    Die Logs selber liegen unter %commonprogramfiles%\Microsoft shared\web Server extensions\14\logs
    am besten hängst Du Dich aber an den Live Trace und startest maunell einen Fulll Sync.

    Die Patches nachzuziehen bzw. im Zweifelsfall den aktuellsten CU einzuspielen könnte sicherlich helfen (vor allem, weil sich gerade im UPS da immer wieder einiges tut).

    Welche Versionen hast Du denn auf Deinen beiden Server?
    (Findest Du unter CentralAdmin -> System Settings - Manage Server in Farm, steht dann ganz oben auf der Seite)

    Bzgl. call: im VL Center findest Du Deine Infos:
    https://www.microsoft.com/licensing/servicecenter/default.aspx

    HTH,
      Daniel


    --
    Daniel Wessels
    MVP SharePoint Server: Architecture

    Donnerstag, 15. März 2012 10:00
  • Hallo Daniel, die Versionen sind unterschiedlich:

    Vers. der Configuration Database der Testmaschine. 14.0.4762.1000 # Profil import funktioniert
    Vers. der Configuration Database der Produktiven Maschine: 14.0.6114.5000 # Profil import funktioniert nicht

    Review Database Status:
    -----------------------
    - auf der Testmaschine steht der Status auf allen DB's auf: no action required
    - auf der Produktiven Maschine habe ich drei Content DB's bei den der wie folgt Status ist: Database is up to date, but some sites are not completely upgraded.

    wie kann ich das beheben?

    Mario


    System Engineer

    Donnerstag, 15. März 2012 20:37
  • ... ich kann leider in unserem Volumen Licensing Service Center nicht finden wo ich eine Support Ticket bei Microsoft eröffnen kann. Weiss jemand wie man dies macht resp. kann mir jemand einen Link dazu schicken ?

    betsen Dank & Gruss

    Mario


    System Engineer

    Donnerstag, 15. März 2012 21:02
  • Hallo Mario,

    die DBs bekommst Du mir folgendem Powershell-"Skript" hochgezogen:

    $DB = Get-SPContentDatabase -Identity [YourDatabaseName]
    Upgrade-SPContentDatabase -id $DB
    

    Achtung: klappt so nur bei normalen ContentDB (also von Portalen etc.). Sollten auch ContentDBs der Central Admin betroffen sein (Name irgendwas mit "AdminContent") dann brauchst Du eine etwas andere Methode (sag dann noch mal Bescheid).

    Unabhängig davon:
    Du bist mit Deinen Versionen noch weit vor Service Pack 1. Ich würde Dir dringend empfehlen, beide Umgebungen (natürlich erst Test :-)) mindestens auf dieses, wenn nicht sogar auf den aktuellen CU (nur, falls Du nach dem SP1 immer noch Probleme mit dem UPS hast) zu bringen.

    Achtung: nach dem SP (und/oder CU) musst Du den UPS neu provisionieren (am einfachsten beide Dienste über die Central Admin stoppen und neu starten (Reihenfolge beachten: Stoppen: erst den 2., dann den 1. Dienst. Starten: 1. Dienst, dann 2. Dienst)

    HTH,
      Daniel


    --
    Daniel Wessels
    MVP SharePoint Server: Architecture

    Donnerstag, 15. März 2012 21:25
  • ... habe auf der testmaschine Sharepoint SP1 eingespielt. Die Configuration Database hat jetzt die Version 14.0.6029.1000. Wenn ich auf dem Porduktiven Server habe ich aber die Version 14.0.6114.5000, dies bedeutet SP1 & Patch KB2597014 --> da ist schon SP1 drauf. Ich verstehe nun deine Aussage nicht ganz, dass der Produktive Server weit vor SP sein soll. Wie hast du das gemeint ?

    Mario


    System Engineer

    Donnerstag, 15. März 2012 21:55