2016-11-22 7 views
0

私はすべての質問と回答を読みましたが、私は見つけることができますが、oauthはまだ動作していません。 これはconfig ejabberd.ymlです。 ejabberdは生成トークンを拒否します

http://192.168.217.128:5280/oauth/authorization_token?response_type=token&client_id=somclient&redirect_uri=http://192.168.217.128:5280&scope=sasl_auth

私はこのURLを開く


port: 5280 
module: ejabberd_http 
request_handlers: 
    "/websocket": ejabberd_http_ws 
    "/log": mod_log_http 
    # OAuth support: 
    "/oauth": ejabberd_oauth 
    # ReST API: 
    "/api": mod_http_api 
## "/pub/archive": mod_http_fileserver 
web_admin: true 
http_bind: true 
## register: true 
captcha: false 
commands_admin_access: configure 
commands: 
    - add_commands: user 
oauth_expire: 3600 
oauth_access: all 
は、私がJID、パスワードとトークンTTL(1時間)を書き込むHTMLフォームを、示しています。 URLを受け入れるをクリックした後 http://192.168.217.128:5280/?error=access_denied&state=

私は間違っていますか?

私はこの特定のパラメータの場所が間違っていると思います。そのような場合、私はどこに置くべきか分からない。

commands_admin_access: configure 
commands: 
    - add_commands: user 
oauth_expire: 3600 
oauth_access: all 

私の英語のために申し訳ありません。

答えて

0

おそらく、すべてのユーザーに対して適切な資格情報ACLが定義されていない可能性があります。つまり、oauth_accessというのはおそらく拒否されます。

+0

感謝を。 これは私のAclです。 acl: admin: ユーザー: - "admin": "localhost" –

+0

アクセスルールをすべて参照していますが、私が言ったように、設定で定義されていないようです。 –

0

これはトップレベルのオプションです(たとえばapi_permissionなど)。これはセクション内にあってはならず、行の先頭から始める必要があります。

あなたは、あなたが持っている必要がありますので、同様oauth_accessトップレベルを作ることになっている:

oauth_access: all 

api_permission: 
    "abc": 
    ... 

参考リンク:あなたの応答のためのhttps://github.com/processone/ejabberd/issues/1661

関連する問題