2012-09-24 36 views
8

He instalado Magento 1.7.0.2 en el servidor Ubuntu 12.0.4 y todo funciona.acceso a magento denegado

API REST Prueba con un rol de administrador (http://1.2.3.4/magento/api/rest/products) consigo este resultado:

<magento_api> 
    <messages> 
    <error> 
     <data_item> 
     <code>403</code> 
     <message>Access denied</message> 
     </data_item> 
    </error> 
    </messages> 
</magento_api> 

He creado una subvención rol de administrador en todos los accesos todo y el procedimiento de autenticación de token estaba bien.

He intentado con el servicio magento go, el instalador de Bitnami VM y Windows pero parece que los servicios web no están presentes (solo puedo ver el usuario/función en los servicios web).

¿Sabía de una configuración magento con API REST trabajando?

¿Cómo puedo solucionar este tipo de error? Lo he intentado con un cliente REST diferente.

Gracias!

+0

hola, ¿resolvió esto? Estoy teniendo el mismo problema. Estaba revisando y Magento está calculando la firma incorrecta para POST. Si marca /app/code/core/mage/oauth/model/server.php línea 535. $ this -> _ params que se ponen en la función de firma incluyen la firma enviada por el cliente ¿qué es, por lo que entiendo, un error? –

+0

Tuve el mismo problema pero estaba intentando acceder a las funciones de administración con el ejemplo de Inicio de sesión de cliente. Entonces falló, por supuesto. Aquí está la buena manera de hacerlo si desea acceder con el permiso de administrador http://www.magentocommerce.com/api/rest/authentication/oauth_authentication.html – Shadowbob

Respuesta

1

una vez que he probado API REST para Magento ..

I tras blogs me ayudó a configurar la API REST

1.first

2.second

3.third

Solía ​​RESTClient addon for firefox para probar y asegúrese de que Oauth esté habilitado en el servidor.

3

¿Ha establecido permisos para roles y atributos? Si no es así, verifíquelo primero magentocommerce.com/api/rest/permission_settings/

+0

Buen enlace en http://www.magentocommerce.com /api/rest/permission_settings/permission_settings.html – Shadowbob

0

Gracias a chanz, encontré la solución a mi problema.

Parece que no acepta los parámetros de OAuth como parámetros de cadena de consulta . Intenté enviarlos como encabezados HTTP en su lugar y está pasando por .

fuente: http://www.aschroder.com/2012/04/introduction-to-the-magento-rest-apis-with-oauth-in-version-1-7/comment-page-1/#comment-5090

Seguramente, asegúrese de que tiene la configuración correcta en System > Web Services > Web Roles y System > Web Services > Web Attributes.

También es útil utilizar el Ruby oAuth library porque "es limpio, simple y funciona bien". Ver la publicación there.

-2

Usted debe tratar estos para este problema en la API: -

1) cambiar el valor en el archivo /app/code/core/Mage/Api2/Model/Auth.php, cambie el valor de: DEFAULT_USER_TYPE = 'invitado' a DEFAULT_USER_TYPE = 'admin'.

2) cambiar el valor en el archivo de /app/code/core/Mage/Api2/Model/Auth/Adapter.php, cambio esta línea de retorno (objeto) array ('tipo' => Mage_Api2_Model_Auth: : DEFAULT_USER_TYPE, 'id' => null); a esto: return (object) array ('type' => Mage_Api2_Model_Auth :: DEFAULT_USER_TYPE, 'id' => '1'); (nota: solo cambie null a '1').

3) reinicie su servidor (para apache, ejecute este comando: sudo service apache2 restart). Espero que estos pasos resuelvan su problema de acceso denegado 403.