web-dev-qa-db-ja.com

Cant Access Keycloak Rest APIメソッド* 404 *

Dockerで最新のkeycloakイメージを使用しており、標準管理コンソールに http:// localhost:908 でアクセスできます。しかし、私は documentation for Admin REST apiで指定されているパスにアクセスできないようです。たとえば、ベースパス/ authおよびResourceGetは、レルムに属するクライアントのリストを返します:/ {realm}/clients404を取得しています。 documentation の他のメソッドの場合も同様です。有効な200 json応答を返す唯一のパスはです。 http:// localhost:9080/auth/realms / {realm-name} /ドキュメントによると、ベースパス+ "/ {realm-name}"で到達可能です。何か不足している、または間違ったベースパスでアクセスしようとしています。Dockerのキークロークバージョンは3.4.3.Finalで、ドキュメントによると最新バージョンのキークロークです。

私はあなたがこのようにエンドポイントを呼び出そうとしているとほぼ確信しています:

http:// localhost:9080/auth/admin/realms/demo/clients

ただし、この部分を見逃しました/auth/admin/realms

最初に述べたように、最初に電話を承認することを忘れないでください ここ

[〜#〜]更新[〜#〜]

結果を確認するための手順は次のとおりです。

$ docker run -d -e KEYCLOAK_USER=admin -e KEYCLOAK_PASSWORD=admin jboss/keycloak

access_tokenを取得しています:

$ curl -X POST \
    -H 'Content-Type: application/x-www-form-urlencoded' \
    -d 'username=admin&password=admin&client_id=admin-cli&grant_type=password' \
    http://localhost:9080/auth/realms/master/protocol/openid-connect/token  

取得したaccess_tokenをコピーしてAuthorizationヘッダーに貼り付けます。

$ curl -X GET \
    -H 'Authorization: Bearer <access_token_goes_here>' \
    http://localhost:9080/auth/admin/realms/master/clients
13
Alex Karasev