У меня есть приложение Micro Service (React + .net 9) с 2 бэкэнд -сервисами: < /p>
Auth Service, которая вошла в систему и выпускает JWT с роли имени пользователя + (в порте 8005) < /li>
Основная услуга, которая получает этот токен и основан на возврате роли (на порте 8123)
OL> OL>
OL> OL> OL> OL> OL, основанный на роле. > https: // authurl: 8123 .
Что мне нужно сделать, эта служба может использовать токен, выпущенный Сервисом 1?builder.Services
.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
.AddJwtBearer(options =>
{
options.Authority = "https://localhost:8005/Account/Login";
options.Audience = "https://localhost:8123/";
options.RequireHttpsMetadata = false;
});
< /code>
Может быть, проблема с логикой токенов?private async Task
GenerateAuthorizationToken(string userId, string userName) {
var userRole = "Admin";
var now = DateTime.UtcNow;
var secret = Encoding.UTF8.GetBytes(configuration["Key"]);
var key = new SymmetricSecurityKey(secret);
var userClaims = GetUserClaims(userId, userRole);
var expires = now.AddMinutes(60);
var jwt = new JwtSecurityToken(
notBefore: now,
claims: userClaims,
expires: expires,
audience: "https://localhost:8123/",
issuer: "https://localhost:8005/",
signingCredentials: new SigningCredentials(...)
);
var encodedJwt = new JwtSecurityTokenHandler().WriteToken(jwt);
return await Task.FromResult(new AuthorizationResponse
{
AuthorizationToken = encodedJwt,
UserId = userId,
RefreshToken = string.Empty
});
}
private List GetUserClaims(string userId, string userRole) =>
[
new Claim(ClaimsIdentity.DefaultNameClaimType, userId),
new Claim(ClaimsIdentity.DefaultRoleClaimType, userRole)
];
Подробнее здесь: https://stackoverflow.com/questions/797 ... er-service
Проверьте JWT AccessToken, выпущенный другой услугой ⇐ C#
Место общения программистов C#
-
Anonymous
1752577318
Anonymous
У меня есть приложение Micro Service (React + .net 9) с 2 бэкэнд -сервисами: < /p>
Auth Service, которая вошла в систему и выпускает JWT с роли имени пользователя + (в порте 8005) < /li>
Основная услуга, которая получает этот токен и основан на возврате роли (на порте 8123)
OL> OL>
OL> OL> OL> OL> OL, основанный на роле. > https: // authurl: 8123 .
Что мне нужно сделать, эта служба может использовать токен, выпущенный Сервисом 1?builder.Services
.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
.AddJwtBearer(options =>
{
options.Authority = "https://localhost:8005/Account/Login";
options.Audience = "https://localhost:8123/";
options.RequireHttpsMetadata = false;
});
< /code>
Может быть, проблема с логикой токенов?private async Task
GenerateAuthorizationToken(string userId, string userName) {
var userRole = "Admin";
var now = DateTime.UtcNow;
var secret = Encoding.UTF8.GetBytes(configuration["Key"]);
var key = new SymmetricSecurityKey(secret);
var userClaims = GetUserClaims(userId, userRole);
var expires = now.AddMinutes(60);
var jwt = new JwtSecurityToken(
notBefore: now,
claims: userClaims,
expires: expires,
audience: "https://localhost:8123/",
issuer: "https://localhost:8005/",
signingCredentials: new SigningCredentials(...)
);
var encodedJwt = new JwtSecurityTokenHandler().WriteToken(jwt);
return await Task.FromResult(new AuthorizationResponse
{
AuthorizationToken = encodedJwt,
UserId = userId,
RefreshToken = string.Empty
});
}
private List GetUserClaims(string userId, string userRole) =>
[
new Claim(ClaimsIdentity.DefaultNameClaimType, userId),
new Claim(ClaimsIdentity.DefaultRoleClaimType, userRole)
];
Подробнее здесь: [url]https://stackoverflow.com/questions/79701617/check-jwt-accesstoken-issued-by-another-service[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия