Error saving tag changes to a Remote Tag Provider

I have Managed Tag provider running a Remote Gateway. I have have enabled setAllowTagCustomization on the provider. And I am able to modify tags inside that Tag Provider while I am accessing them from that Gateway’s designer.
On a different gateway, I have a Remote Tag provider set up to reference this same Managed Tag provider. I also set the Security Zone rules on the Remote Gateway to allow read/write of tags between this gateway and the remote gateway.
However, When I try to make a tag modification to the Remote Tag provider from the second gateway, I get the following access denied error.

ExecutionException: com.inductiveautomation.ignition.client.gateway_interface.GatewayException: java.lang.SecurityException: Access Denied. Remote tag editing is not allowed for provider 'myManagedTagProvider'.
	caused by GatewayException: java.lang.SecurityException: Access Denied. Remote tag editing is not allowed for provider 'myManagedTagProvider'.
	caused by ExecutionException: java.lang.SecurityException: Access Denied. Remote tag editing is not allowed for provider 'myManagedTagProvider'.

Ignition v8.1.2 (b2021020311)
Java: Azul Systems, Inc. 11.0.9

Here is Java that sets up the Managed Tag provider.

    private ManagedTagProvider createManagedTagProvider(String newProviderName) {
        ProviderConfiguration config = new ProviderConfiguration(newProviderName);

        config.setAllowTagCustomization(true);
        config.setPersistTags(true);
        config.setPersistValues(true);

        ManagedTagProvider newProvider = this.context.getTagManager().getOrCreateManagedProvider(config);

        newProvider.registerWriteHandler(null, (TagPath target, Object value) -> {
            if (isProtectedTag(target)) {
                return QualityCode.Bad_AccessDenied;
            }

            return Send(target, value);
        });

        return newProvider;
    }

Any ideas what I might be missing here?

Read/write? Or Read/Write/Edit? There’s a distinct permission for the latter.

That was it! I selected Read/Write in my Service Security settings instead of Read/Write/Edit. Thanks!

1 Like