diff --git a/apps/assets/models/asset/common.py b/apps/assets/models/asset/common.py index 40874915f..05fada2e3 100644 --- a/apps/assets/models/asset/common.py +++ b/apps/assets/models/asset/common.py @@ -148,6 +148,14 @@ class Asset(NodesRelationMixin, AbsConnectivity, JMSOrgBaseModel): spec_fields = self.get_spec_fields(instance, secret=True) return self.get_spec_values(instance, spec_fields) + @lazyproperty + def info(self): + info = {} + info.update(self.gathered_info or {}) + info.update(self.custom_info or {}) + info.update(self.spec_info or {}) + return info + @lazyproperty def auto_config(self): platform = self.platform diff --git a/apps/authentication/api/connection_token.py b/apps/authentication/api/connection_token.py index dd225073e..5b5dcd700 100644 --- a/apps/authentication/api/connection_token.py +++ b/apps/authentication/api/connection_token.py @@ -162,7 +162,8 @@ class RDPFileClientProtocolURLMixin: def get_smart_endpoint(self, protocol, asset=None): target_ip = asset.get_target_ip() if asset else '' endpoint = EndpointRule.match_endpoint( - target_instance=asset, target_ip=target_ip, protocol=protocol, request=self.request + target_instance=asset, target_ip=target_ip, + protocol=protocol, request=self.request ) return endpoint diff --git a/apps/authentication/serializers/connect_token_secret.py b/apps/authentication/serializers/connect_token_secret.py index f5f5bc62a..9d179877e 100644 --- a/apps/authentication/serializers/connect_token_secret.py +++ b/apps/authentication/serializers/connect_token_secret.py @@ -27,12 +27,13 @@ class _ConnectionTokenUserSerializer(serializers.ModelSerializer): class _ConnectionTokenAssetSerializer(serializers.ModelSerializer): protocols = AssetProtocolsSerializer(many=True, required=False, label=_('Protocols')) + info = serializers.DictField() class Meta: model = Asset fields = [ 'id', 'name', 'address', 'protocols', 'category', - 'type', 'org_id', 'spec_info', 'secret_info', + 'type', 'org_id', 'info', 'secret_info', ]