namespace ZB.MOM.WW.OtOpcUa.Server.Security;

/// <summary>
///     Minimal interface a <see cref="Opc.Ua.IUserIdentity"/> implementation can expose so
///     <see cref="ZB.MOM.WW.OtOpcUa.Server.OpcUa.DriverNodeManager"/> can read the session's
///     resolved roles without a hard dependency on any specific identity subtype. Implemented
///     by <c>OtOpcUaServer.RoleBasedIdentity</c>; tests implement it with stub identities to
///     drive the authz policy under different role sets.
/// </summary>
public interface IRoleBearer
{
    IReadOnlyList<string> Roles { get; }
}
