Crowd를 통해 Jira에 Sonar 액세스 권한을 어떻게 부여하나요?

Crowd를 통해 Jira에 Sonar 액세스 권한을 어떻게 부여하나요?

내 Jenkins 빌드는 저장된 필터의 결과를 Jira에서 가져오는 Sonar 작업을 호출합니다. 내가 가진 문제는 Sonar의 요청이 항상 거부된다는 것입니다. Crowd 2.2.2를 통해 인증하는 상당히 복잡한 시스템 클러스터(Jira 4.4.3, Sonar 3.2.1, Jenkins 1.473 등)가 있습니다.

2012.10.17 12:00:03 INFO  c.a.c.i.s.s.c.SecurityServerClientImpl  Existing application token is null, authenticating ...
2012.10.17 12:00:03 ERROR o.c.x.t.h.HttpChannel  Server returned error code = 403 for URI : http://10.74.47.12:8095/crowd/services/SecurityServer. Check server logs for details
2012.10.17 12:00:03 ERROR rails  Error from external authenticator: org.codehaus.xfire.XFireRuntimeException: Could not invoke service.. Nested exception is org.codehaus.xfire.fault.XFireFault: Server returned error code = 403 for URI : http://10.74.47.12:8095/crowd/services/SecurityServer. Check server logs for details

Sonar가 Jira에 접속하는 데 사용하는 계정이 유효하고 Jira에 액세스할 수 있는 권한이 있음을 확인했습니다. Sonar Crowd 플러그인을 설치하고 다음에 따라 구성했습니다.선적 서류 비치, 그런데 뭔가 잘못되었습니다. Sonar에 로그인하면 sonar.log에 다음 오류가 표시됩니다(그러나 로그인은 성공합니다).

2012.10.17 15:49:53 INFO  c.a.c.i.s.s.c.ClientPropertiesImpl  Loading property: 'application.name' : 'sonar'
2012.10.17 15:49:53 INFO  c.a.c.i.s.s.c.ClientPropertiesImpl  Failed to find value for property: application.login.url
2012.10.17 15:49:53 INFO  c.a.c.i.s.s.c.ClientPropertiesImpl  Loading property: 'crowd.server.url' : 'http://10.74.47.120:8095/crowd/services/'
2012.10.17 15:49:53 INFO  c.a.c.i.s.s.c.ClientPropertiesImpl  Failed to find value for property: session.isauthenticated
2012.10.17 15:49:53 INFO  c.a.c.i.s.s.c.ClientPropertiesImpl  Failed to find value for property: session.tokenkey
2012.10.17 15:49:53 INFO  c.a.c.i.s.s.c.ClientPropertiesImpl  Failed to find value for property: session.lastvalidation
2012.10.17 15:49:53 INFO  c.a.c.i.s.s.c.ClientPropertiesImpl  Loading property: 'session.validationinterval' : '5'
2012.10.17 15:49:53 INFO  c.a.c.i.s.s.c.SecurityServerClientImpl  Existing application token is null, authenticating ...
2012.10.17 15:49:54 ERROR o.c.x.t.h.HttpChannel  Server returned error code = 403 for URI : http://10.74.47.12:8095/crowd/services/SecurityServer. Check server logs for details
2012.10.17 15:49:54 ERROR rails  Error from external authenticator: org.codehaus.xfire.XFireRuntimeException: Could not invoke service.. Nested exception is org.codehaus.xfire.fault.XFireFault: Server returned error code = 403 for URI : http://10.74.47.12:8095/crowd/services/SecurityServer. Check server logs for details
  • 키 포인트:
    • Crowd 서버의 서버 로그에는 아무 것도 알려주지 않습니다. Crowd에 도달하더라도 Sonar 인증 요청에 대한 기록은 없습니다.
    • sonar-3.2.1/conf/sonar.properties 및 Sonar-Tomcat/conf/crowd.properties 모두에 application.login.url을 정의했지만 sonar.log가 이를 인식하지 못합니다.
    • Sonar IS는 sonar-3.2.1/conf/sonar.properties에서 일부 정보를 수집합니다. Sonar가 변경 사항을 등록하는지 확인하기 위해 Crowd.url을 변경했는데 실제로 그랬습니다.
    • session.validationinterval은 Sonar-Tomcat/conf/crowd.properties에서 0으로 정의되어 있지만 sonar.log에서는 session.validationinterval을 5로 표시합니다. 해당 값을 어디서 가져오는지 알 수 없습니다.
    • http://10.74.47.12:8095/crowd/services/SecurityServer유효한 URL이고 거기에 사용 가능한 SOAP 서버가 있습니다.

Jenkins Crowd Plugin과 Jenkins Jira Plugin도 설치되어 있는데 거기에는 아무런 문제가 없습니다.

다른 사람이 이것을 시도한 적이 있습니까? 제가 놓친 추가 단계가 있습니까?

답변1

:) 답변이 있습니다!!! 일주일 전에 이걸 발견했을 때 정말 기뻤어요. 비슷한 문제가있었습니다.

http://wiki.idalko.com/display/SONAUT/Sonar+Authenticator+for+JIRA

이 사람은 코드를 포크하여 Jira 임베디드 크라우드와 작동하도록 수정했습니다. 지금은 테스트 서버에 배포 중입니다... 제게는 아주 잘 작동합니다!

관련 정보