У меня есть сервер идентификации, созданный с использованием IdentityServer4.
У меня есть 2 приложения (1 .NET, 1 PHP), обращающиеся к ресурсам друг друга и использующие этот Identity Server для проверки токена доступа в заголовке запроса.
В приложении Identity Server я добавляю конфигурацию клиента, как показано ниже
clients.Add(
new Client
{
ClientId = "myClientId",
ClientName = "My Client Name",
ClientSecrets = new List<Secret>
{
new Secret("secret".Sha256())
},
AllowedGrantTypes = GrantTypes.ClientCredentials,
AllowedScopes = new List<string>
{
"php.es.api"
}
});
Из приложения .NET я могу легко получить токен доступа, вызвав метод RequestClientCredentialsAsync с областью действия "php.es.api". Затем добавьте этот токен-носитель и отправьте запрос в PHP API.
Проблема в том, что я не знаю, есть ли у IdentityServer4 API, чтобы приложение PHP могло вызывать его для аутентификации токена доступа. Я гуглил и не нашел никаких упоминаний об этом API в документах.
Нужно ли мне писать новый API в приложении Identity Server для PHP или других приложений, отличных от .NET, для проверки токена?
Ресурсы доступа приложения .NET из приложения PHP, как показано ниже.