¿Jira RPC / SOAP GetCustomFields () solo puede ser utilizado por un administrador?

StackOverflow https://stackoverflow.com/questions/1612447

  •  06-07-2019
  •  | 
  •  

Pregunta

Actualmente estoy usando la interfaz SOAP de Jira dentro de un C # (supongo que el lenguaje utilizado aquí no es terriblemente importante).

Básicamente, estoy creando una API y un Winform que envuelve algunas de las funcionalidades del servicio de jabón para que nuestros Devs puedan agregar errores programáticamente cuando algo sale mal en nuestra aplicación.

Como parte de esto, necesito saber los ID de campo personalizados que se usan en Jira, en lugar de codificarlos (ya que todavía son propensos al cambio ocasional) utilicé GetCustomFields () en la api de jira-rpc luego lo filtró, de modo que todo lo que el desarrollador necesita saber es el nombre del campo, luego se rellena el ID para ellos de forma automática.

Todo esto funciona bien, pero con una condición bastante importante: que inicie sesión en el servicio SOAP / RPC como usuario con privilegios administrativos.

La documentación de Jira indica que el servicio soap / rpc sigue los flujos de trabajo y los esquemas de seguridad habituales, sin embargo, no puedo encontrar nada en ningún lugar que parezca eliminar esta restricción al enumerar campos personalizados (y por eso, en cualquier caso, desearía alguien a quien TENGO que ser administrador para obtener este acceso, especialmente porque las identificaciones de campo personalizadas tienden a estar en la fuente HTML de Jira está fuera de mi alcance)

¿Alguien sabe si me he perdido una configuración en algún lugar? ¿O si hay algún tipo de solución alternativa para esto, aparte de codificar de forma rígida los ID de campo personalizados?

¿O es este un caso de tener que profundizar en el complemento RPC de Jira y modificar la fuente para que me brinde la funcionalidad que necesito?

Saludos

Editar por el bien de google / posterity

Vaya, todo este tiempo, y parece que Atlassian todavía no ha cambiado este comportamiento.

¿Fue útil?

Solución

Para resolver esto, creó un diccionario personalizado que inicia sesión como usuario administrativo, toma los campos personalizados y luego cierra la sesión. No es lo ideal, pero debería funcionar hasta que Atlassian cambie las cosas

Otros consejos

No te estás perdiendo nada, no hay forma de obtener campos personalizados a través de la API SOAP estándar.

En JIRA Client, aprendemos acerca de los campos personalizados de dos maneras:

  1. Descargamos los problemas a través de la vista RSS del navegador de problemas, o a través de la representación XML de un problema específico. Si se establece un campo personalizado para un problema, el XML tendrá su id, clase y valor (valores).

  2. De vez en cuando inspeccionamos el contenido de la página de búsqueda de IssueNavigator, buscando buscadores para los campos personalizados. Al raspar la pantalla, el HTML nos proporciona no solo los identificadores de los campos personalizados, sino también los valores posibles para los campos de enumeración.

Esto es una piratería, por supuesto, y puede ir mal, por lo que una buena API hubiera sido mucho mejor.

En su caso, puedo sugerir dos soluciones:

  1. Crea tu propio complemento de API remota SOAP (o REST) ??que te dará solo la información que extrañas de la API estándar. Ya que aparentemente tienes el control de tu JIRA, puedes instalar cualquier cosa allí.

  2. Limpie la pantalla " Nuevo error " Página para el proyecto y tipo de problema que necesita enviar. Obtendrá toda la información: campos, opciones, valores predeterminados, qué campo es obligatorio.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top