Apparemment, il faut explicitement spécifier (liste blanche) les adresses IP qui seront autorisées à accéder à une base de données SQL Azure. Je veux cependant que des utilisateurs de N-gazillion * accèdent à ces tableaux pour les données qui leur sont spécifiques.
Est-ce que ceux-ci devront d'abord me fournir leur adresse IP afin que je puisse l'ajouter en tant qu'entrée valide, ou existe-t-il un moyen programmatique de le faire, ou une autre solution?
Il serait conseillé d'avoir une sorte de middleware accédant à la base de données et non à vos clients directement.
Cependant, si vous souhaitez que n'importe quelle adresse IP puisse se connecter à la base de données, ajoutez simplement cette entrée à la liste des pare-feu:
Portail Azure -> Bases de données -> Serveurs -> Configurer et ajouter la règle suivante:
Comment vos utilisateurs accèderont-ils à la base de données, via une application Web (frontal) ou directement (je suppose que vous ne donnerez pas aux utilisateurs un accès direct à votre base de données?), Si c'est via une application Web (couche de présentation), alors tout ce dont vous avez besoin todo consiste à accorder l'accès à cette adresse IP de la couche de présentation/couche de service (et si elle est hébergée dans Azure à côté d'elle).
SQL DB Azure a deux types de restrictions d'accès (plus d'informations ici) " Pare-feu Windows Azure SQL Database Firewall "
Vous pouvez soit ouvrir toutes les adresses IP 0.0.0.0 - 255.255.255.255 (pas très sécurisées) ou proposer des politiques plus fines basées sur les règles de pare-feu de base de données ci-dessus.
La seule façon est de le faire via une requête SQL. Azure affiche uniquement les règles du serveur de pare-feu pour être visible uniquement sur le portail, mais au niveau de la base de données, la seule façon est via SQL.
-- Enable Allconnections.
EXECUTE sp_set_database_firewall_rule N'Allow All', '0.0.0.0', '255.255.255.255';
Login to Azure Portal
select your database subscription
click on Tools
Now there is option 'Open in VisualStudio' (click on it)
You can see "Configure Firewall" click on it.
Add you new IP.
Done :)
Si vous les laissez parler directement à votre base de données (par exemple via SSMS), vous devez entrer leur adresse IP (ou vous pouvez simplement ajouter à la liste blanche toute la gamme). Habituellement, ils utiliseront votre base de données via votre propre API, il n'est donc pas nécessaire de mettre leurs adresses IP en liste blanche.