Compartilhar via


Diretrizes sobre o desempenho do ACS

Aplica-se A

  • Access Control do Active Directory do Microsoft Azure (também conhecido como Access Control Service ou ACS)

  • Windows Identity Foundation (WIF)

Resumo

Este tópico descreve as principais diretrizes de desempenho que você deve levar em conta ao desenvolver aplicativos e serviços que usam o ACS. O tópico inclui, particularmente, diretrizes sobre tamanhos e criptografia de token e como isso afeta o desempenho geral.

Visão geral

Em termos gerais, os principais atributos de desempenho são tempo de resposta, taxa de transferência e utilização de recursos. Por exemplo, se o aplicativo tem recursos limitados, como memória, é provável que algumas informações cheguem ao sistema de arquivos, que é bem mais lento do que as operações na memória. Esse processo afeta o tempo de resposta geral. Veja outro exemplo: se o aplicativo envia um volume grande de dados por uma rede com largura de banda limitada, os tempos de resposta ficarão abaixo do desejável. Uma abordagem para solucionar problemas de desempenho é adicionar mais recursos, como largura de banda, CPU mais rápida e mais memória. Essa abordagem é útil, mas é provável que nem sempre ajude. Outra abordagem é melhorar o código para que ele utilize menos recursos e troque menos dados. Considerando o contexto de aplicativos com reconhecimento de declarações e o que está sob controle do desenvolvedor, há alguns fatores importantes relacionados ao uso do ACS que afetam o desempenho, ou seja, tokens e operações criptográficas relacionadas aos tokens.

Objetivos

  • Defina os aspectos que afetam o desempenho em aplicativos que usam ACS.

  • Forneça diretrizes sobre como melhorar o desempenho de cada aspecto.

Tamanho e criptografia de tokens

O tamanho do token e a criptografia são fatores-chave sob o controle do desenvolvedor que afetam o desempenho dos aplicativos integrados ao ACS.

  • Tamanho do token. O tamanho do token afeta o desempenho de duas maneiras. Em primeiro lugar, ele afeta diretamente o desempenho relacionado à largura de banda da rede em algum nível. Quanto maior o token, mais largura de banda de rede ele usará, o que resultará em resposta geral mais lenta. Depois, quanto maior o token, mais ciclos de CPU são necessários para verificar as declarações de integridade e extração contidas no token. O processamento do token inclui analisá-lo e desfazer sua serialização em um formato binário para que o código possa usá-lo. O processamento também inclui várias operações de criptografia, como validação de assinatura e descriptografia opcional. Quanto maior o token, mais ciclos de CPU ocorrerão em seu processamento, o que resultará em maior utilização de recursos e resposta geral mais lenta. O tamanho do token depende de vários fatores: formato de token, criptografia aplicada ao token e as declarações no token. O ACS aceita tokens SAML, SWT e JWT. Geralmente, um SWT ou um token JWTJWT é menor que um token SAML que carrega uma quantidade equivalente de informações. Para obter mais informações, leia formatos de token com suporte no ACS. É importante salientar que diferentes formatos de token são otimizados para diferentes protocolos e arquiteturas de aplicativo.

    • Os tokens SWT são emitidos por protocolos WS-Federation, WS-Trust e OAuth WRAP ou OAuth 2.0. Isso significa que os tokens SWT podem ser usados em aplicativos Web, serviços WCF (SOAP) e serviços WCF (REST). O WIF não é compatível com o manipulador de token SWT.

    • Os Tokens SAML são emitidos por protocolos WS-Trust e WS-Federation. Isso significa que os tokens SAML podem ser usados em aplicativos Web e serviços WCF (SOAP). O WIF aceita tokens SAML 2.0 e SAML 1.1. Leia mais sobre o WIF no tópico a seguir Windows Identity Foundation

    • Os tokens JWT são emitidos por meio dos protocolos WS-Federation, WS-Trust e OAuth 2.0. Isso significa que os tokens SWT podem ser usados em aplicativos Web, serviços WCF (SOAP) e serviços WCF (REST).

    Um fator primordial que contribui para o tamanho do token são as declarações que ele contém. Quanto mais declarações houver no token, maior será seu tamanho. Na maioria dos casos, as declarações contidas no token ficam sob o controle do desenvolvedor. As declarações usadas por um aplicativo são adicionadas, removidas ou alteradas pelo STS (Serviço de Token de Segurança), como AD FS ou ACS. O ACS usa grupos de regras e regras para adicionar, remover ou alterar declarações em um token. Para obter mais informações , leia Grupos de Regras e Regras.

  • Criptografia. a criptografia e outras operações criptográficas, como assinatura, validação de assinatura e descriptografia, afetam diretamente o desempenho. As operações de criptografia consomem energia computacional devido à complexidade dos algoritmos envolvidos. O ACS assina todos os tokens emitidos como medida de integridade para combater os ataques de violação. A validação de assinatura de tokens não é opcional. A criptografia de token é necessária quando um aplicativo de terceira parte confiável é um serviço Web que não usa SSL para criptografar as comunicações. Serviços baseados em WCF e que usam SOAP precisam de tokens criptografados de verificação de posse com o protocolo WS-Trust. A criptografia de token é necessária para proteger informações confidenciais enviadas por um canal não criptografado. Entretanto, nos casos em que o canal de comunicação está criptografado, como a criptografia de SSL, o uso da criptografia de token é opcional e não pode ser aplicada para melhorar o desempenho.

Consulte Também

Conceitos

Diretrizes de segurança do ACS
Diretrizes para gerenciamento de chaves e certificados