J'utilise le plugin github oauth ==) == pour nos connexions mais pour tous nos utilisateurs de l'organisation, une erreur se produit:
Access Denied
<user> is missing the Overall/Read permission
J'ai essayé tout ce que je pouvais penser pour essayer de faire ce travail et je vais probablement me rabattre sur le fait de faire de tout le monde un utilisateur administrateur, ce que je préférerais ne pas faire.
Tout conseil serait apprécié.
Voici comment j'ai résolu le problème d'authentification:
Modifier config.xml
fichier, par exemple.
Sudo vi /var/lib/jenkins/config.xml
Remplacez la valeur de l'élément useSecurity
par false
, par exemple.
<useSecurity>false</useSecurity>
Supprimer le bloc authorizationStrategy
Redémarrer Jenkins: /etc/init.d/jenkins restart
.
Avez-vous suivi cette étape, à partir de la page du plugin?
Control user authorization (i.e. who is allowed to see the jobs and build them) using the Github Commiter Authorization Strategy
Assurez-vous également que vous autorisez les utilisateurs authentifiés à accéder à Jenkins.
authenticated
.J'ai eu le même problème avec "... il manque l'autorisation globale/lecture" sur Jenkins (1.651.2) avec le plugin Credentials activé.
Mais c’est mon propre échec: je n’ai configuré l’utilisateur que côté projet (avec le plug-in de données d’identité), mais j’ai manqué de configurer la sécurité globale.
Je l'ai donc corrigé en sélectionnant:
Jenkins -> Gérer Jenkins -> Configurer la sécurité globale
Et avez-vous configuré les paramètres globaux manquants (ou ceux basés sur la matrice de projet)
réinitialiser de <useSecurity>true</useSecurity>
à <useSecurity>false</useSecurity>
dans config.xml et redéfinissez l'autorisation.
Editez le fichier /var/lib/jenkins/config.xml et ajoutez les lignes suivantes:
<authorizationStrategy class="hudson.security.ProjectMatrixAuthorizationStrategy">
<permission>hudson.model.Hudson.Read:john.smith</permission>
</authorizationStrategy>
Redémarrer Jenkins
Vérifiez également les noms d'utilisateur de cas dans l'élément authorizationStrategy
. J'ai mis mon nouveau nom d'utilisateur en minuscule et j'ai redémarré le service et l'erreur a disparu.
J'ai eu le même problème ici, mais cela ne concernait que certains utilisateurs, pas tous. Quoi qu'il en soit, vous devez vérifier l'appartenance à une organisation publique: la documentation du plug-in indique que "Vous devez être un membre public de l'organisation pour que l'autorisation fonctionne correctement". ( https://wiki.jenkins-ci.org/display/JENKINS/Github+OAuth+Plugin ).
Suivez les instructions de GitHub ( https://help.github.com/articles/publicizing-or-hiding-organization-membership/ ) afin de rendre publique l'appartenance à une organisation, ce qui pourrait résoudre votre problème.
Résolvez-le avec ces 2 commandes Shell sur le serveur (l'autorisation Sudo est requise):
Sudo ex +g/useSecurity/d +g/authorizationStrategy/d -scwq /var/lib/jenkins/config.xml
Sudo /etc/init.d/jenkins restart
Ceci supprimera les lignes useSecurity
et authorizationStrategy
de votre fichier de configuration.
Voir aussi: Désactiver la sécurité sur le site Web de Jenkins
<useSecurity>true</useSecurity>
élément dans ce fichier.authorizationStrategy
et securityRealm
Ce que j’ai fait quand j’ai eu cette erreur, c’est de modifier config.xml comme mentionné par d’autres utilisateurs et de rajouter correctement mon nom d’utilisateur dans LOWERCASE dans la page "configureSecurity" de Jenkins. J'utilisais "KrustyHack" lors de l'ajout d'autorisations, mais cela ne fonctionnait pas. J'ai dû ajouter "krustyhack" à la place, et cela a fonctionné.
J'espère que ça aide.
Nous avons rencontré la même erreur lorsqu'un administrateur d'organisation github a modifié les paramètres de l'organisation pour "Accès tiers" par "restreindre l'accès aux applications tierces". Le retour aux paramètres précédents dans l’organisation github a résolu le problème.
Voir github oauth-app-access-restrictions pour des détails sur la façon de configurer cela correctement.
L'attribution des rôles aux utilisateurs est stockée dans config.xml
fichier. Ajoutez l'ID de l'utilisateur directement au rôle, puis redémarrez Jenkins.
Dans mon cas, j'ai un rôle nommé editor
et un groupe d'utilisateurs affectés à ce rôle.
<role name="editor" pattern=".*">
<permissions>
<...>
<permission>hudson.model.Item.Create</permission>
<permission>hudson.model.Item.Workspace</permission>
<permission>...</permission>
</permissions>
<assignedSIDs>
<sid>bob</sid>
<sid>alice</sid>
<sid>**newuser**</sid>
</assignedSIDs>
</role>
La sécurité de la matrice n'est pas très claire. Je suis membre d'un groupe spécifique de notre organisation qui dispose de privilèges d'administrateur, mais je suis également un utilisateur authentifié. Je penserais qu'un groupe super-cède l'autre mais je dois avoir les deux pour pouvoir me connecter au système et être administrateur. C'est foutu à l'OMI.
J'avais le même problème auparavant, votre OAuth doit être approuvée par le propriétaire de votre entreprise, puis le OAuth peut accéder aux données privées qu'il contient).
J'ai eu un problème similaire, je n'ai pas pu accéder au compte Jenkin et le système était verrouillé. Je n'avais qu'un message d'erreur. "Accès refusé "
Quand j'ai essayé de réinstaller Jenkins, il m'a alors demandé de réparer l'option. En cliquant sur l'option de réparation, le problème a été résolu.
J'ai eu exactement le même problème et l'ajout du plugin Role Strategy Plugin a résolu le problème.
Tout ce que j'avais à faire était d'installer le plug-in, de créer deux groupes - admin/développeur, puis d'ajouter des utilisateurs aux groupes.
Une solution bien meilleure que de recréer toute la matrice des autorisations :)
J'utilise le plugin Crowd 2 et j'ai le même problème. Je l'ai résolu en rétrogradant le plug-in OWASP Markup Formatter de varsion 1.2 vers la version 1.1, puis en changeant Markup Formatter dans la valeur de configuration de la sécurité globale en HTML brut, avant que ce ne soit du texte brut.