Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde,
Preciso gerar um script para criar uma nova conta no cpanel.
Encontrei o script do Leo Teixeira (http://forum.imasters.com.br/topic/413712-automacaocom-api-cpanel-whm/)
e passei as instruções necessárias para criar a conta através do script abaixo:
<?
include_once "xmlapi.php" ;
$ip = getenv('REMOTE_HOST');
$xmlapi = new xmlapi($ip);
$xmlapi->password_auth("root","root_password");
$xmlapi->set_debug(1);
$xmlapi->__construct("dominio.com.br");
$acct = array( username => "teste", password => "123", domain => "teste.dominio.com.br");
print $xmlapi->createacct($acct);
?>
Estou tendo o seguinte retorno:
QUERY: https://dominio.com.br:2087/xml-api/createacct?username=teste&password=1123&domain=teste.dominio.com.br - 0 Access denied -RAW XML: 0 Access denied object(SimpleXMLElement)#2 (1) { ["data"]=> object(SimpleXMLElement)#3 (2) { ["result"]=> string(1) "0" ["reason"]=> string(13) "Access denied" } } SIMPLEXML OBJ:
Se alguém poder me ajudar eu agradeço muito.
Ótima dica!!!
Te agradeço!
Vou baixar e fazer as alterações necessárias e qualquer coisa posto aqui novamente. :rolleyes:
Léo, no whm tem a opção para se gerar uma nova chave de acesso e tem uma lista chamada 'Chave de Acesso Atual' onde contém algumas chaves.
Eu posso pegar uma dessas chaves existentes ou devo criar uma nova?
Você pode usar a chave que já está criada lá. Mas se você ainda não está a usando em lugar nenhum sugiro que gere uma nova.
OK! Obrigada
Olá,
Baixei os arquivos citados pelo Leo no site da CPanel e estou com dúvida referente a utilização do hash....
O usuário que eu devo colocar junto a chamada da função para autenticação via hash deve ser o root?
ex.: hash_auth('root','chave');
Fiz o teste com um outro usuário que me dá acesso ao whm só que quando executo ele está me retornando "0 Sorry, that username is reserved.". E quando utilizo o root me retorna '0 Acesso Negado'.
Coloquei um echo para exibir o resultado da variavel $response dentro da função xmlapi_query (arquivo xmlapi.php) para que eu tivesse esse resultado citado acima.
// perform simplexml transformation (array relies on this)
if ( ($this->output == 'simplexml') || $this->output == 'array') {
echo $response;//esta dando acesso negado;
$response = simplexml_load_string($response, null, LIBXML_NOERROR | LIBXML_NOWARNING);
echo "1";
if (!$response){
error_log("Some error message here");
echo "-2";
return;
}
if ( $this->debug ) {
echo "-3";
error_log("SimpleXML var_dump:\n" . print_r($response, true));
}
}Já resolvi!!!!
Eu estava passando uma senha com poucos caracteres.
E Leo, muito obrigada!!!
Sua ajuda foi de grande importância!!!! :clap:
>
Encontrei o script do Leo Teixeira (http://forum.imaster...api-cpanel-whm/)
Esse script não é meu não, ele é disponibilizado pela própria empresa cPanel. Eu vi agora que eles tem um repositório no GitHub, você pode baixar a versão mais recente da lib lá :seta: https://github.com/CpanelInc/xmlapi-php
Pela mensagem de erro você não tem autorização pra criar a conta. Como você está usando o usuário "root" eu presumo que você tenha um servidor dedicado ou VPS com o cPanel instalado, certo? Você tem certeza que a senha está correta?
Eu não costumo usar a senha de "root" no script até por questões de segurança, em vez da senha eu uso o hash.
Você pode estar gerando um hash no painel WHM em Cluster/Remote Access -> Setup Remote Access Key (o meu está em inglês, não sei se o seu está em português).
Depois que você gerar esse hash você usa o método hash_auth no lugar do password_auth. Além de mais seguro se você alterar a senha do WHM não precisa alterar no seu sistema de gerenciamento de hospedagem. /applications/core/interface/imageproxy/imageproxy.php?img=http://forum.imasters.com.br/public/style_emoticons/default/wink.gif&key=0566fd943552bcff9cb1b879403ca34b5ff8f67befaac7fe4648006e9f764689" alt="wink.gif" />