// ========================LICENSE_START=================================
// O-RAN-SC
// %%
-// Copyright (C) 2022: Nordix Foundation
+// Copyright (C) 2022-2023: Nordix Foundation
+// Copyright (C) 2024: OpenInfra Foundation Europe
// %%
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
}
}
data := url.Values{"grant_type": {"client_credentials"}, "client_id": {accessTokenReq.ClientId}, "client_secret": {*accessTokenReq.ClientSecret}}
- jwtToken, err := s.keycloak.GetToken("invokerrealm", data)
- if err != nil {
- return sendAccessTokenError(ctx, http.StatusBadRequest, securityapi.AccessTokenErrErrorUnauthorizedClient, err.Error())
+
+ var jwtToken keycloak.Jwttoken
+ var err error
+
+ if s.keycloak != nil {
+ jwtToken, err = s.keycloak.GetToken("invokerrealm", data)
+ if err != nil {
+ return sendAccessTokenError(ctx, http.StatusBadRequest, securityapi.AccessTokenErrErrorUnauthorizedClient, err.Error())
+ }
+ } else {
+ return sendAccessTokenError(ctx, http.StatusBadRequest, securityapi.AccessTokenErrErrorUnauthorizedClient, "keycloak is nil")
}
accessTokenResp := securityapi.AccessTokenRsp{
}
if ss, ok := s.trustedInvokers[apiInvokerId]; ok {
- securityInfoCopy := s.revokeTrustedInvoker(&ss, notification, apiInvokerId)
+ securityInfoCopy := s.revokeTrustedInvoker(&ss, notification)
if len(securityInfoCopy) == 0 {
s.deleteTrustedInvoker(apiInvokerId)
}
-func (s *Security) revokeTrustedInvoker(ss *securityapi.ServiceSecurity, notification securityapi.SecurityNotification, apiInvokerId string) []securityapi.SecurityInformation {
+func (s *Security) revokeTrustedInvoker(ss *securityapi.ServiceSecurity, notification securityapi.SecurityNotification) []securityapi.SecurityInformation {
data, _ := copystructure.Copy(ss.SecurityInfo)
securityInfoCopy, _ := data.([]securityapi.SecurityInformation)