Microsoft. (n.d.). Row-Level Security. SQL Server Documentation.
Location: Section "Use Case: Filter rows based on the current user".
Justification: This official documentation provides a direct example of an RLS implementation that filters based on the current user. The example explicitly shows the creation of an inline, schema-bound function (WITH SCHEMABINDING) and the use of WHERE @UserName = USER_NAME() as the predicate logic, directly supporting the answers for BOX 1 and BOX 2.
Microsoft. (n.d.). CREATE SECURITY POLICY (Transact-SQL). SQL Server Documentation.
Location: "Syntax" and "Examples" sections.
Justification: This document details the syntax for creating a security policy. It confirms that the ADD FILTER PREDICATE clause is followed by the function call and then the ON [ schema_name. ] object_name clause. This object_name is the table being protected, which corresponds to AuthorSales in BOX 3.
Microsoft. (n.d.). CREATE FUNCTION (Transact-SQL). SQL Server Documentation.
Location: Arguments > SCHEMABINDING.
Justification: This page confirms the requirement for BOX 1. It states: "The function must be schema-bound to be used as a predicate function in a security policy." This makes SCHEMABINDING a mandatory selection.