Compartilhar via


ExportBrokeredServiceAttribute.AllowTransitiveGuestClients Propriedade

Definição

Obtém ou define um valor que indica se os clientes convidados têm permissão para adquirir esse serviço transitivamente. Por padrão (false), somente os proprietários têm permissão para acessar um serviço agenciado. Para aceitar permitir que os convidados adquiram o serviço oferecido, defina-o truecomo . Ao definir isso para true o serviço agora tem a responsabilidade exclusiva de usar IAuthorizationService corretamente para autorizar operações confidenciais.

public bool AllowTransitiveGuestClients { get; set; }
member this.AllowTransitiveGuestClients : bool with get, set
Public Property AllowTransitiveGuestClients As Boolean

Valor da propriedade

Comentários

Enquanto Audience é um controle de arquitetura, essa propriedade define o limite de segurança.

Exemplo de acesso transitivo: o serviço A executa operações confidenciais. Ele é oferecido com RemoteExclusiveClient para que ele só possa ser *diretamente* adquirido pelos proprietários. No entanto, isso não é suficiente para impedir o acesso não autorizado. Se o Serviço B for oferecido com AllClientsIncludingGuests, ele poderá ser adquirido *diretamente* por convidados. Quando o Serviço B adquire internamente uma instância do Serviço A, isso significa que os convidados agora têm acesso *indireto* às operações confidenciais no Serviço A. Se o Serviço A não tiver implementado a autorização para proteger operações confidenciais, esse acesso indireto violará o limite de segurança.

Para evitar que partes não confiáveis adquiram transitivamente um serviço que deve exigir autorização, por padrão, todos os serviços agenciados só são acessíveis aos proprietários. Isso é independentemente do valor de Audience. No exemplo acima, se o Serviço B tiver sido aquiredado por um convidado, a tentativa de adquirir o Serviço A falhará.

Quando um serviço implementa a autorização para proteger operações confidenciais, ele pode aceitar permitir a aquisição de convidado definindo essa propriedade truecomo .

Aplica-se a