Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2023-08-02 GMT+08:00

Realização de autenticação de proxy

Descrição

Esta API é usada para autenticar uma conta de proxy de terceiros. Depois que a autenticação é bem-sucedida, um token de acesso é gerado. Atualmente, as seguintes contas de proxy de terceiros são suportadas:

  • Contas e senhas de WeLink
  • Contas de terceiros em conformidade com OAuth 2.0

SLA

Taxa de sucesso de solicitação: > 99,99%

Atraso na solicitação TP99: 40 ms

  • Quando clientType é definido como 72, até 64 tokens podem ser criados para cada conta. Se 64 tokens foram criados usando uma conta e os tokens são válidos, criar um novo token usando a mesma conta invalidará o primeiro token entre os primeiros 64 tokens.
  • Quando clientType não é definido como 72, apenas um token pode ser criado para cada conta.
  • Um token é válido por 12 a 24 horas.

Depuração

Você pode depurar essa API no API Explorer.

Protótipo

Tabela 1 Protótipo

Método de solicitação

POST

Endereço de solicitação

/v1/usg/acs/auth/proxy

Protocolo de transporte

HTTPS

Parâmetros de solicitação

Tabela 2 Parâmetros

Parâmetro

Obrigatório

Tipo

Localização

Descrição

Content-Type

Sim

String

Cabeçalho

Formato de mídia do corpo, por exemplo, application/json; charset=UTF-8.

X-Request-ID

Não

String

Cabeçalho

ID da solicitação, que é usado para rastreamento e localização de falhas. É aconselhável usar um UUID. Se este parâmetro não for transportado, um ID de solicitação é gerado automaticamente.

Accept-Language

Não

String

Cabeçalho

Idioma. Valores: zh-CN para chinês (padrão) e en-US para inglês.

account

Não

String

Corpo

Conta de autenticação.

maxLength: 255

minLength: 0

authServerType

Sim

String

Corpo

Tipo de serviço de autenticação.

  • workplace: autenticação de proxy do WeLink.
  • oauth2: autenticação de OAuth 2.0.

authType

Sim

String

Corpo

Modo de autenticação.

  • AccountAndPwd: autenticação de proxy do WeLink.
  • AuthCode: autenticação de OAuth 2.0

clientType

Sim

Integer

Corpo

Tipo da conta usada para fazer logon.

  • 72: chamada de API.

createTokenType

Não

Integer

Corpo

Se gerar um token.

  • 0: um token é gerado para autenticação de logon.
  • 1: nenhum token é gerado. Valor padrão: 0.

credential

Não

String

Corpo

Se o OAuth 2.0 for usado, defina esse parâmetro como o código temporário obtido do centro de autenticação.

domain

Não

String

Corpo

Nome de domínio empresarial. Esse parâmetro é obrigatório para a autenticação do OAuth 2.0.

pwd

Não

String

Corpo

Senha de autenticação. Este parâmetro é obrigatório para a autenticação de proxy de WeLink.

maxLength: 255

minLength: 0

remark

Não

String

Corpo

Observações.

Códigos de status

Tabela 3 Códigos de status

Código de status HTTP

Descrição

200

Operação bem-sucedida.

400

Parâmetros inválidos.

401

Acesso negado.

403

Permissões insuficientes.

412

A conta foi desativada.

423

A conta foi bloqueada.

500

Exceção do servidor.

Parâmetros de resposta

Tabela 4 Parâmetros de resposta

Parâmetro

Tipo

Descrição

accessToken

String

Token de acesso.

clientType

Integer

Tipo da conta usada para fazer logon.

  • 72: chamada de API.

createTime

Long

Carimbo de data/hora quando o token é criado, em milissegundos.

daysPwdAvailable

Integer

Período de validade de senha.

delayDelete

Boolean

Se a exclusão do token está atrasada.

expireTime

Long

Carimbo de data/hora quando o token expira, em segundos.

firstLogin

Boolean

Se o logon é o primeiro logon.

NOTA:

Se você fizer logon no sistema pela primeira vez, o sistema solicitará que você altere a senha inicial.

Valor padrão: false.

forceLoginInd

Integer

Se o logon preventivo está ativado.

  • 0: desativado.
  • 1: ativado. (Este valor não é fornecido.)

proxyToken

ProxyTokenDTO object

Informações de autenticação do proxy.

pwdExpired

Boolean

Se a senha expirou.

Valor padrão: false.

refreshCreateTime

Long

Carimbo de data/hora quando um token de atualização é criado, em milissegundos.

refreshExpireTime

Long

Carimbo de data/hora quando o token de atualização expira, em segundos.

refreshToken

String

Token de atualização.

refreshValidPeriod

Long

Período de validade do token de atualização, em segundos.

tokenIp

String

Endereço IP do usuário.

tokenType

Integer

Tipo de token.

  • 0: token de acesso do usuário.
  • 1: token de controle de reunião.
  • 2: token único.

user

UserInfo object

Detalhes de autenticação do usuário.

validPeriod

Long

Período de validade do token, em segundos.

Exemplo de solicitação

POST /v1/usg/acs/auth/proxy
Connection: keep-alive
Content-Type: application/json
X-Request-ID: 5162fa32dc7e47afafeee39a72a2eec3
Accept-Language: zh-CN
Host: api.meeting.huaweicloud.com
User-Agent: Apache-HttpClient/4.5.3 (Java/1.8.0_191)

{
    "clientType": "72",
    "authServerType": "workplace",
    "authType": "AccountAndPwd",
    "pwd": "1qaz@WSX",
    "createTokenType": 0,
    "account": "zhangsan@cloudlinkwp"
}

Exemplo de resposta

HTTP/1.1 200 
Date: Wed, 18 Dec 2019 06:20:40 GMT
Content-Type: application/json;charset=UTF-8
Content-Length: 745
Connection: keep-alive
Pragma: No-cache
Cache-Control: no-cache
Expires: Thu, 01 Jan 1970 00:00:00 GMT
X-XSS-Protection: 1; mode=block
X-Download-Options: noopen
X-Content-Type-Options: nosniff
strict-transport-security: max-age=16070400; includeSubDomains
X-Frame-Options: SAMEORIGIN
Content-Security-Policy: default-src 'self' 'unsafe-inline' 'unsafe-eval' blob: data: http: https: ; child-src * ; connect-src *
x-request-id: 5162fa32dc7e47afafeee39a72a2eec3
Server: CloudPortal

{
    "accessToken": "stbNxmD2UXEDkHQD73sqMhXB6eXw6ngvSbo9",
    "clientType": 0,
    "createTime": 1599102826754,
    "daysPwdAvailable": -18172,
    "delayDelete": false,
    "expireTime": 1577979513,
    "firstLogin": true,
    "forceLoginInd": null,
    "proxyToken": null,
    "pwdExpired": false,
    "refreshCreateTime": 1599102826754,
    "refreshExpireTime": 1601694826,
    "refreshToken": "stbYaza5VVRr3IGuLSs6ZvF0lMHHvGO0tQ0f",
    "refreshValidPeriod": 2592000,
    "tokenIp": "10.8.0.90",
    "tokenType": 0,
    "user": {
        "adminType": 2,
        "alias1": null,
        "appId": null,
        "cloudUserId": "76aaaba8a12f4c0a8a43192...",
        "companyDomain": null,
        "companyId": "f5968fc4f9c14d50905e8e66672dabc6",
        "corpType": 0,
        "freeUser": false,
        "grayUser": false,
        "headPictureUrl": null,
        "isBindPhone": null,
        "name": "xxxx_name",
        "nameEn": null,
        "numberHA1": "1ead5e5ce44849bc2718d5c....",
        "paidAccount": null,
        "paidPassword": null,
        "password": null,
        "realm": "huaweicloud.com",
        "serviceAccount": "sip:xxxx@huaweicloud.com",
        "spId": "666bd8558e4646e1a7e1a0c99cf898e8",
        "status": 0,
        "thirdAccount": "62fe180o133fd...",
        "tr069Account": "X3M537A6IX4SC...",
        "ucloginAccount": "z8b2vo875ioh54r29ad5e3552vb3gm8np2j167...",
        "userId": "0d5202707123429d876....",
        "userType": 2,
        "visionAccount": null,
        "weLinkUser": false
    },
    "validPeriod": 84616
}

Códigos de erro

Se um código de erro começando com MMC ou USG for retornado quando você usar essa API, corrija a falha seguindo as instruções fornecidas no Centro de erros da API da Huawei Cloud.

Exemplo de comando cURL

curl -k -i -H 'content-type: application/json' -X POST  -H 'X-Request-ID: 5162fa32dc7e47afafeee39a72a2eec3,Content-Type: application/json,Accept-Language: zh-CN' -H 'date: 20190329T074551Z' -d '{"clientType":0,"authServerType":"workplace","authType":"AccountAndPwd","pwd":"1qaz@WSX","createTokenType":0,"account":"zhangsan@cloudlinkwp"}'
'https://api.meeting.huaweicloud.com/v1/usg/acs/auth/proxy'