mirror of
https://repository.entgra.net/community/device-mgt-core.git
synced 2025-10-06 02:01:45 +00:00
Merge branch 'feature1277' into 'master'
Generate QR with access token for given user See merge request entgra/carbon-device-mgt!867
This commit is contained in:
commit
15b5aaa340
@ -62,11 +62,13 @@ public interface APIManagementProviderService {
|
|||||||
* @param applicationName Application Name
|
* @param applicationName Application Name
|
||||||
* @param tokenType Token Type
|
* @param tokenType Token Type
|
||||||
* @param validityPeriod Validity Period
|
* @param validityPeriod Validity Period
|
||||||
|
* @param username Name of the user to create the token. If null, set as carbon context user
|
||||||
* @return {@link String} Access Token
|
* @return {@link String} Access Token
|
||||||
* @throws APIManagerException if error occurred while getting the access token for given scopes,
|
* @throws APIManagerException if error occurred while getting the access token for given scopes,
|
||||||
* validity period etc.
|
* validity period etc.
|
||||||
*/
|
*/
|
||||||
AccessTokenInfo getAccessToken(String scopes, String[] tags, String applicationName, String tokenType, String validityPeriod)
|
AccessTokenInfo getAccessToken(String scopes, String[] tags, String applicationName, String
|
||||||
|
tokenType, String validityPeriod, String username)
|
||||||
throws APIManagerException;
|
throws APIManagerException;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -233,7 +233,7 @@ public class APIManagementProviderServiceImpl implements APIManagementProviderSe
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AccessTokenInfo getAccessToken(String scopes, String[] tags, String applicationName, String tokenType,
|
public AccessTokenInfo getAccessToken(String scopes, String[] tags, String applicationName, String tokenType,
|
||||||
String validityPeriod) throws APIManagerException {
|
String validityPeriod, String username) throws APIManagerException {
|
||||||
try {
|
try {
|
||||||
String tenantDomain = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantDomain(true);
|
String tenantDomain = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantDomain(true);
|
||||||
ApiApplicationKey clientCredentials = getClientCredentials(tenantDomain, tags, applicationName, tokenType,
|
ApiApplicationKey clientCredentials = getClientCredentials(tenantDomain, tags, applicationName, tokenType,
|
||||||
@ -245,15 +245,22 @@ public class APIManagementProviderServiceImpl implements APIManagementProviderSe
|
|||||||
throw new APIManagerException(msg);
|
throw new APIManagerException(msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
String user =
|
if (username == null || username.isEmpty()) {
|
||||||
|
username =
|
||||||
PrivilegedCarbonContext.getThreadLocalCarbonContext().getUsername() + "@" + PrivilegedCarbonContext
|
PrivilegedCarbonContext.getThreadLocalCarbonContext().getUsername() + "@" + PrivilegedCarbonContext
|
||||||
.getThreadLocalCarbonContext().getTenantDomain(true);
|
.getThreadLocalCarbonContext().getTenantDomain(true);
|
||||||
|
} else {
|
||||||
|
if (!username.contains("@")) {
|
||||||
|
username += "@" + PrivilegedCarbonContext
|
||||||
|
.getThreadLocalCarbonContext().getTenantDomain(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
JWTClientManagerService jwtClientManagerService = APIApplicationManagerExtensionDataHolder.getInstance()
|
JWTClientManagerService jwtClientManagerService = APIApplicationManagerExtensionDataHolder.getInstance()
|
||||||
.getJwtClientManagerService();
|
.getJwtClientManagerService();
|
||||||
JWTClient jwtClient = jwtClientManagerService.getJWTClient();
|
JWTClient jwtClient = jwtClientManagerService.getJWTClient();
|
||||||
AccessTokenInfo accessTokenForAdmin = jwtClient
|
AccessTokenInfo accessTokenForAdmin = jwtClient
|
||||||
.getAccessToken(clientCredentials.getConsumerKey(), clientCredentials.getConsumerSecret(), user,
|
.getAccessToken(clientCredentials.getConsumerKey(), clientCredentials.getConsumerSecret(), username,
|
||||||
scopes);
|
scopes);
|
||||||
|
|
||||||
return accessTokenForAdmin;
|
return accessTokenForAdmin;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user