Permissões de App

O campo permissions no app manifest controla o acesso do app a várias API sensíveis no dispositivo (também conhecidas por WebAPIs). As permissões são descritas nas tabelas a seguir.

  • Apps hospedadas (hosted): têm um nível básico de permissões não tendo acesso às APIs privilegiadas ou certificadas.
  • Apps privilegiadas (privileged): têm todas as permissões das hospedadas (hosted) e outras mais. Apps hospedadas não podem ser privilegiadas - para isto devem ser empacotadas
  • Apps certificadas (certified): têm todas as permissões das privilegiadas e armazenadas e outras mais.

Para mais informações sobre os tipos acima veja Tipos de apps empacotados.

Nota: Se você usa o App Manager para testar sua app, ele demonstrará uma tabela de fácil leitura das permissões que são permitidas (allowed), negadas (denied), ou requerem uma confirmação (require prompt) no dispositivo ou simulador atual ao qual está conectado.

Permissões de apps hosted e privileged

Manifesto Nome da API Descrição Modelo de App requerido Acesso a propriedade Default granted Plataform
alarms Alarm Agenda uma notificação, ou uma aplicação para ser iniciada. hosted none Allow FxOS
audio-capture GetUserMedia Obtém um canal de mídia (MediaStream) de dispositivos de entrada de áudio, ex. Microfone hosted none Prompt (mesmo para Apps certificados) FxOS
audio-channel-alarm Audio Policy Alarmes de data / hora. privileged none Allow FxOS
audio-channel-content Audio Policy Música, video. hosted none Allow FxOS
audio-channel-normal Audio Policy Sons da interface, conteúdo Web, música, rádio. hosted none Allow FxOS
audio-channel-notification Audio Policy Novo email ou sms. privileged none Allow FxOS
browser Browser Habilita o app para implementar um browser em um iframe. privileged none Allow FxOS
contacts Contacts Adicionar, ler ou modificar contatos da lista no dispositivo e ler contatos do SIM. privileged readonly, readwrite, readcreate, or createonly Prompt para todos tipos de apps instalados. FxOS
desktop-notification mozNotification for Gecko <22, Notification for Gecko 22+ Mostra uma notificação no desktop do usuário. Note que para Gecko <22 (Firefox OS <1.2) deve ser utilizado mozNotification, enquanto para Gecko 22+ (Firefox 1.2+) deve-se utilizar Notification. hosted none Prompt para conteúdo Web. Allow para todos os tipos de Apps instalados. FxOS, Android,
Desktop
device-storage:music Device Storage Adicionar, ler ouo modificar arquivos de música armazenados no dispositivo. privileged readonly, readwrite, readcreate, or createonly Prompt FxOS
device-storage:pictures Device Storage Adicionar, ler ouo modificar arquivos de imagens armazenados no dispositivo. privileged readonly, readwrite, readcreate, or createonly Prompt FxOS
device-storage:sdcard Device Storage Adicionar, ler ouo modificar arquivos armazenados no cartão SD do dispositivo. privileged readonly, readwrite, readcreate, or createonly Prompt FxOS
device-storage:videos Device Storage Adicionar, ler ouo modificar arquivos de vídeo armazenados no dispositivo. privileged readonly, readwrite, readcreate, or createonly Prompt FxOS
fmradio FM Radio Controlar o rádio FM. hosted none Allow FxOS
geolocation Geolocation Obter a localização atual do usuário. hosted none Prompt (mesmo para Apps certificados) FxOS, Desktop, Android
keyboard Keyboard Permite o app atuar como um teclado virtual verificando os eventos de troca de foco em outros apps. Hospedado none Allow FxOS
mobilenetwork Mobile Network Obter informações da rede móvel (MCC, MNC, etc.). privileged none Allow FxOS
push Simple Push Habilita um app a acordar para receber uma notificação. hosted none Allow FxOS
storage Storage Utilizar armazenamento (appcache, pinned apps, IndexedDB) sem limitação de tamanho. Veja appcache, IndexedDB. hosted none Allow FxOS,
Desktop
systemXHR SystemXHR Permite cross-origin XHR (sem cookies) anônimo sem o site alvo ter CORS habilitado. Similar a API Socket TCP mas restrita a XHR, não somente raw sockets, então o risco é bem menor. Veja XMLHttpRequest. privileged none Allow FxOS
tcp-socket TCP Socket Cria sockets TCP e comunica com eles. privileged none Allow FxOS,
Desktop

Permissões de apps certificadas

As permissões a seguir requerem um app certificado e são permitidas sem solicitar confirmação ao usuário. A maioria dos desenvolvedores não serão capazes de utilizar estas permissões, pois elas são direcionadas a apps a nível de sistema.

Manifest permission Nome da API Descrição Minimum app type required Propriedade de Acesso Plataform
attention Attention Screen Permite um conteúdo abrir uma janela acima de todos os outros conteúdos. Utilizado pelo telefone e SMS. certified none FxOS
audio-channel-ringer Audio Policy Chamadas entrantes do telefone. certified none FxOS
audio-channel-telephony Audio Policy Ligações telefone e VoIP. certified none FxOS
audio-channel-publicnotification Audio Policy Sons do obturador da câmera. certified none FxOS
background-sensors Background Sensor Habilidade para monitorar em background eventos do sensor de proximidade. (Todos apps recebem estes eventos em foreground) certified none FxOS
backgroundservice Background Services Habilita um app para rodar em background e realizar tarefas como sincronizia ou responder a mensagens entrantes. certified none FxOS
bluetooth   Acesso de baixo nível ao hardware Bluetooth. certified none FxOS
camera Camera

Tirar fotos, filmar e controlar a câmera.

Nota: A razão da câmera estar limitada a apps certificadas é que a sandbox, na qual as apps rodam, evita o acesso ao hardware da câmera. Nosso objetivo é torná-la disponível a aplicações de terceiros, porém não temos tempo de fazer nesta liberação inicial.

certified none FxOS
cellbroadcast   Dispara um evento quando um tipo específico de mensagem de rede celular é recebida. (uma notificação de emergência em rede). certified none FxOS
device-storage:apps Device Storage Adicionar, ler ou modificar arquivos armazenados no local de apps do dispositivo. certified read FxOS
embed-apps Embed Apps Habilidade para embedar apps em mozApp frames. certified none FxOS
idle Idle Notifica o app se o usuário está ocioso. certified none FxOS
mobileconnection Mobile Connection Obter informação sobre a atual conexão móvel de voz e dados. certified none FxOS
network-events Network Events Monitorar uploads e downloads da rede. certified none FxOS
networkstats-manage Network Stats Manage Obter estatísticas de uso de dados por interface. certified none FxOS
open-remote-window Open out-of-process windows Permite chamadas window.open normais, mas a janela resultante é aberta em um novo processo. certified none FxOS
permissions Permissions Permite um app a gerenciar permissões de outros aplicativos. certified none FxOS
power Power Management Liga ou desliga a tela, controla CPU, energia do aparelho etc. Monitora e inspeciona eventos de travamento de recursos. certified none FxOS
settings Settings Alterar ou ler as configurações do dispositivo. certified readonly or readwrite FxOS
sms WebSMS Mandar e receber mensagens SMS. certified none FxOS
telephony WebTelephony Acessar toda API relacionada a telefonia para fazer e receber chamadas. certified none FxOS
time TimeManager Setar a hora atual. Informação de time zone é controlada pla API Settings. Antigamente chamada de systemclock. certified none FxOS
voicemail Voicemail Acessar correio de voz. certified none FxOS
webapps-manage Open Webapps Obter acesso a API navigator.mozApps.mgmt para gerenciar Open Web Apps instaladas. certified none FxOS, Desktop, Android
wifi-manage WiFi Management Enumerar redes WiFi disponíveis, verificar a força do sinal, conectar à rede. certified none FxOS
wappush WAP Push Receber mensagens WAP Push. certified none FxOS

Veja também

A tabela de permissões é onde as permissões são definidas no código Firefox.

Muitas destas APIs estão em desenvolvimento e outras virão no futuro. Para maiores informações no andamento veja a página WebAPI na MozillaWiki.

Etiquetas do documento e colaboradores

 Última atualização por: jackfowl,