2017-07-05 4 views
2

Ich erhalte von Data Fabrik folgende Fehler, wenn ich ein U-SQL JobU-SQL Job Failing in Daten Fabrik

Job submission failed, the user 'adla account name' does not have permissions to a subfolder in the /system/ path needed by Data Lake Analytics. Please run “Add User Wizard” from the Data Lake Analytics Azure Portal or use Azure PowerShell to grant access for the user to the /system/ and its children on the Data Lake Store. 

laufen und ich bin nicht mit jedem Firewall wie in diesem Beitrag vorgeschlagen:

Run U-SQL Script from C# code with Azure Data Factory

ich bin mit der Azure Daten See Speicherdienst Haupt Authentifizierung. Wenn ich den Job von Visual Studio starte, funktioniert es auch gut.

würde ich für jede Idee dankbar ...

dank

+0

Haben Sie die Kontoberechtigungen für den azure Data Lake Store explizit angegeben? siehe Schritt 2 von http://spr.com/azure-data-lake-store-add-service-to-service-authentication/ –

+0

Ja, ich habe das getan. Die Active Directory-Anwendung hat Zugriff auf den Stammordner adls und alle untergeordneten Objekte ... – COR

Antwort

0

Es klingt wie ein Berechtigungsproblem. Sie können diese Powershell-Skript laufen Sie die richtigen Berechtigungen für den Sicherheitsprinzipal angewendet, um sicherzustellen, haben:

Login-AzureRmAccount 
$appname = “adla” 
$dataLakeStoreName = “yourdatalakename” 

$app = Get-AzureRmADApplication -DisplayName $appname 

$servicePrincipal = Get-AzureRmADServicePrincipal -SearchString $appname 

Set-AzureRmDataLakeStoreItemAclEntry -AccountName $dataLakeStoreName -Path/-AceType User -Id $servicePrincipal.Id -Permissions All 

Set-AzureRmDataLakeStoreItemAclEntry -AccountName $dataLakeStoreName -Path /system -AceType User -Id $servicePrincipal.Id -Permissions All 

Wenn Sie alles von Grund auf neu mit einem Powershell-Skript erstellen möchten, hier ist ein Blog, die Ihnen helfen:

+0

Vielen Dank @mattyor ... Der Sicherheitsprinzipal hat die Berechtigung für den Stammordner von ADLS + für alle untergeordneten Objekte. Außerdem ist es ein Teil der Standard-Berechtigungen ... – COR

+1

Ich habe dies überprüft. Ich habe dem Stammordner und allen untergeordneten Elementen Berechtigungen zugewiesen. Das System und die Katalogordner erhielten jedoch keine Berechtigungen. Ich musste diesen Ordnern manuell Berechtigungen zuweisen. Sicherlich hat das Skript geholfen. Danke – COR

+1

Ausgezeichnet! Ich finde Azure Data Lake Store-Berechtigungen viel zu leise. Ich habe ein paar Stunden mit schlechten Berechtigungen verbracht. Wenn das Portal sagte "Sicherheits-Principal X versucht, auf Ordner Y zuzugreifen, hat aber keine Berechtigungen", hätte es mir eine Menge Zeit gespart. Aber wenn Sie nur Powershell verwenden, um den SP zu erstellen (was ich im referenzierten Blog mache), funktioniert das auch. Vielen Dank. – mattdyor

1

Wenn Sie den verknüpften Azure Data Lake Analytics-Dienst von Azure Data Factory mit einem Dienstprinzipal autorisieren, könnte dies Ihr Problem sein.

Ich habe ein ausstehendes Support-Ticket mit Microsoft, da die Authentifizierung des Service-Prinzips nur mit einfachen Datenfactory-Aktivitäten wie "Kopieren" funktioniert. Es funktioniert nicht, wenn Sie komplexe Aktivitäten wie 'DotNotActivity' authentifizieren möchten.

Ich würde empfehlen, den verknüpften Dienst wieder auf die Verwendung von Sitzungs- und Tokenauthentifizierung anzuwenden, dann Ihre Aktivitäten bereitzustellen und es erneut zu versuchen.

Hoffe, das hilft.

+1

Vielen Dank @Paul Andrew für Ihre Eingabe. Ich konnte das Problem lösen. Eigentlich nutzte ich das Azure Active Directory App-Konto wirklich Berechtigungen für die Ordner "System" und "Katalog". Was wirklich komisch ist ... Allerdings werde ich Ihren Tipp beachten. Danke vielmals! Und außerdem rocken deine Blogs! – COR