Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede, Azure portalı ile IBM WebSphere Application Server tekliflerinde Java uygulamaları için parolasız veritabanı bağlantılarını yapılandırma adımları gösterilmektedir.
Bu kılavuzda aşağıdaki görevleri yerine getirebilirsiniz:
- Azure CLI kullanarak veritabanı kaynakları sağlama.
- Veritabanında Microsoft Entra yöneticisini etkinleştirin.
- Kullanıcı tarafından atanan bir yönetilen kimlik sağlayın ve bunun için bir veritabanı kullanıcısı oluşturun.
- Azure portalı ile IBM WebSphere Application Server tekliflerinde parolasız veritabanı bağlantısı yapılandırın.
- Veritabanı bağlantısını doğrulayın.
PostgreSQL, MySQL ve Azure SQL veritabanları için parolasız bağlantıları destekler.
Önkoşullar
Bir Azure aboneliği. Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.
Bash ortamını kullanarak Azure Cloud Shell
kullanın. Azure CLI sürümünün 2.43.0 veya üzeri olduğundan emin olun. İsterseniz Azure CLI komutlarını çalıştırmak için Azure CLI 2.43.0 veya üzerini yükleyin.
- Yerel yükleme kullanıyorsanız
az loginkomutunu kullanarak Azure CLI ile oturum açın. Kimlik doğrulama işlemini tamamlamak için, terminalinizde görüntülenen adımları takip edin. Diğer oturum açma seçenekleri için bkz . Azure CLI ile oturum açma. - İstendiğinde, ilk kullanımda Azure CLI uzantılarını yükleyin. Uzantılar hakkında daha fazla bilgi için Azure CLI ile uzantıları kullanma sayfasına bakın.
- Yüklü sürümü ve bağımlı kitaplıkları bulmak için
az versionçalıştırın. En son sürüme yükseltmek içinaz upgradeçalıştırın.
- Yerel yükleme kullanıyorsanız
Oturum açmak ve bu makaleyi tamamlamak için kullandığınız Azure kimliğinin geçerli abonelikte Sahip rolüne veya geçerli abonelikteki Katkıda Bulunan ve Kullanıcı Erişimi Yöneticisi rollerine sahip olduğundan emin olun. Azure rollerine genel bakış için bkz. Azure rol tabanlı erişim denetimi (Azure RBAC) nedir? Oracle WebLogic market teklifinin gerektirdiği belirli roller hakkında ayrıntılı bilgi için bkz . Azure yerleşik rolleri.
Dağıtım için bir bölge seçin
İstediğiniz veritabanı için kullanılabilir SKU'ları olan bir bölge seçin. Aşağıdaki Azure CLI komutu, belirli bir bölgedeki kullanılabilir SKU'ları listeler. Bazı sonuçlara sahip bir bölge bulana kadar farklı bölgeleri denemeye devam edin.
az mysql flexible-server list-skus --location "$REGION" --output table
Bir kaynak grubu oluşturun
az group createile bir kaynak grubu oluşturun. Kaynak gruplarının bir abonelik içinde benzersiz olması gerektiğinden, benzersiz bir ad seçin. Benzersiz adlar kullanmanın kolay bir yolu, baş harflerinizin, bugünün tarihinin ve bazı tanımlayıcıların (örneğin, abc1228rg) bir bileşimini kullanmaktır. Bu örnek, konumunda adlı abc1228rgeastus bir kaynak grubu oluşturur.
export RESOURCE_GROUP_NAME="abc1228rg"
export REGION=eastus
az group create \
--name ${RESOURCE_GROUP_NAME} \
--location ${REGION}
Veritabanı sunucusu ve veritabanı oluşturma
az mysql flexible-server create komutuyla esnek bir sunucu oluşturun. Bu örnek, yönetici kullanıcı mysql20221201 ve yönetici parolası azureuserile adlı Secret123456 esnek bir sunucu oluşturur. Parolayı sizinkiyle değiştirin. Daha fazla bilgi için bkz. Azure CLI kullanarak MySQL için Azure Veritabanı Esnek Sunucu Oluşturma.
export MYSQL_NAME="mysql20221201"
export MYSQL_ADMIN_USER="azureuser"
export MYSQL_ADMIN_PASSWORD="Secret123456"
az mysql flexible-server create \
--resource-group $RESOURCE_GROUP_NAME \
--name $MYSQL_NAME \
--location ${REGION} \
--admin-user $MYSQL_ADMIN_USER \
--admin-password $MYSQL_ADMIN_PASSWORD \
--public-access 0.0.0.0 \
--tier Burstable \
--sku-name Standard_B1ms
az mysql flexible-server db createile veritabanı oluşturun.
export DATABASE_NAME="contoso"
# create mysql database
az mysql flexible-server db create \
--resource-group $RESOURCE_GROUP_NAME \
--server-name $MYSQL_NAME \
--database-name $DATABASE_NAME
Komut tamamlandığında aşağıdaki örneğe benzer bir çıktı görmeniz gerekir:
Creating database with utf8 charset and utf8_general_ci collation
{
"charset": "utf8",
"collation": "utf8_general_ci",
"id": "/subscriptions/contoso-hashcode/resourceGroups/abc1228rg/providers/Microsoft.DBforMySQL/flexibleServers/mysql20221201/databases/contoso",
"name": "contoso",
"resourceGroup": "abc1228rg",
"systemData": null,
"type": "Microsoft.DBforMySQL/flexibleServers/databases"
}
Veritabanınız için bir Microsoft Entra yöneticisi yapılandırma
Veritabanını oluşturduğunuza göre artık parolasız bağlantıları desteklemeye hazır hale getirmeniz gerekir. Parolasız bağlantı, Azure kaynakları ve Microsoft Entra kimlik doğrulaması için yönetilen kimliklerin bir bileşimini gerektirir. Azure kaynakları için yönetilen kimliklere genel bakış için bkz . Azure kaynakları için yönetilen kimlikler nelerdir?
MySQL Esnek Sunucusunun yönetilen kimliklerle nasıl etkileşime geçtiğini öğrenmek içinMySQL için Azure Veritabanı belgelerine
Aşağıdaki örnek, geçerli Azure CLI kullanıcısını bir Microsoft Entra yönetici hesabı olarak yapılandırıyor. Azure kimlik doğrulamasını etkinleştirmek için MySQL Esnek Sunucusuna kimlik atamak gerekir.
İlk olarak, az identity create ile yönetilen bir kimlik oluşturun ve kimliği az mysql flexible-server identity assignile MySQL sunucusuna atayın.
export MYSQL_UMI_NAME="id-mysql-aad-20221205"
# create a User Assigned Managed Identity for MySQL to be used for AAD authentication
az identity create \
--resource-group $RESOURCE_GROUP_NAME \
--name $MYSQL_UMI_NAME
## assign the identity to the MySQL server
az mysql flexible-server identity assign \
--resource-group $RESOURCE_GROUP_NAME \
--server-name $MYSQL_NAME \
--identity $MYSQL_UMI_NAME
Ardından, geçerli Azure CLI kullanıcısını az mysql flexible-server ad-admin createile Microsoft Entra yönetici hesabı olarak ayarlayın.
export CURRENT_USER=$(az account show --query user.name --output tsv)
export CURRENT_USER_OBJECTID=$(az ad signed-in-user show --query id --output tsv)
az mysql flexible-server ad-admin create \
--resource-group $RESOURCE_GROUP_NAME \
--server-name $MYSQL_NAME \
--object-id $CURRENT_USER_OBJECTID \
--display-name $CURRENT_USER \
--identity $MYSQL_UMI_NAME
Kullanıcının atadığı yönetilen kimliği oluşturun
Ardından Azure CLI'da az identity create komutunu kullanarak aboneliğinizde bir kimlik oluşturun. Veritabanınıza bağlanmak için bu yönetilen kimliği kullanırsınız.
az identity create \
--resource-group ${RESOURCE_GROUP_NAME} \
--name myManagedIdentity
Aşağıdaki adımlarda kimliği yapılandırmak için az identity show komutunu kullanarak kimliğin istemci kimliğini bir kabuk değişkeninde depolayın.
# Get client ID of the user-assigned identity
export CLIENT_ID=$(az identity show \
--resource-group ${RESOURCE_GROUP_NAME} \
--name myManagedIdentity \
--query clientId \
--output tsv)
Yönetilen kimliğiniz için veritabanı kullanıcısı oluşturma
İlk olarak, CLI istemcinizden veritabanı sunucusuna erişmek için bir güvenlik duvarı kuralı oluşturmanız gerekir. Geçerli IP adresinizi almak için aşağıdaki komutları çalıştırın:
export MY_IP=$(curl http://whatismyip.akamai.com)
VPN etkin linux için Windows Alt Sistemi (WSL) üzerinde çalışıyorsanız, aşağıdaki komut yanlış bir IPv4 adresi döndürebilir. IPv4 adresinizi alma yollarından biri whatismyipaddress.com ziyaret etmektir.
MY_IP ortam değişkenini veritabanına bağlanmak istediğiniz IPv4 adresi olarak ayarlayın. Veritabanı güvenlik duvarını daha sonra bu IP adresiyle yapılandıracaksınız.
Microsoft Entra yönetici kullanıcısı olarak MySQL veritabanınıza bağlanın ve yönetilen kimliğiniz için bir MySQL kullanıcısı oluşturun.
az mysql flexible-server firewall-rule createile geçici bir güvenlik duvarı kuralı oluşturun.
az mysql flexible-server firewall-rule create \
--resource-group $RESOURCE_GROUP_NAME \
--name $MYSQL_NAME \
--rule-name AllowCurrentMachineToConnect \
--start-ip-address ${MY_IP} \
--end-ip-address ${MY_IP}
Ardından, yönetilen kimlik için veritabanı kullanıcısı oluşturmak üzere bir SQL dosyası hazırlayın. Aşağıdaki örnek, oturum açma adı identity-contoso olan bir kullanıcıyı ekler ve kullanıcıya veritabanı contosoerişme ayrıcalıkları verir:
export IDENTITY_LOGIN_NAME="identity-contoso"
cat <<EOF >createuser.sql
SET aad_auth_validate_oids_in_tenant = OFF;
DROP USER IF EXISTS '${IDENTITY_LOGIN_NAME}'@'%';
CREATE AADUSER '${IDENTITY_LOGIN_NAME}' IDENTIFIED BY '${CLIENT_ID}';
GRANT ALL PRIVILEGES ON ${DATABASE_NAME}.* TO '${IDENTITY_LOGIN_NAME}'@'%';
FLUSH privileges;
EOF
sql dosyasını az mysql flexible-server executekomutuyla yürütür. erişim belirtecinizi az account get-access-tokenkomutuyla alabilirsiniz.
export RDBMS_ACCESS_TOKEN=$(az account get-access-token \
--resource-type oss-rdbms \
--query accessToken \
--output tsv)
az mysql flexible-server execute \
--name ${MYSQL_NAME} \
--admin-user ${CURRENT_USER} \
--admin-password ${RDBMS_ACCESS_TOKEN} \
--file-path "createuser.sql"
Aşağıdaki çıkışta gösterildiği gibi rdbms-connect uzantısını yüklemeniz istenebilir. Devam etmek için y basın.
root kullanıcısıyla çalışmıyorsanız, o kullanıcının parolasını girmeniz gerekir.
The command requires the extension rdbms-connect. Do you want to install it now? The command will continue to run after the extension is installed. (Y/n): y
Run 'az config set extension.use_dynamic_install=yes_without_prompt' to allow installing extensions without prompt.
This extension depends on gcc, libpq-dev, python3-dev and they will be installed first.
[sudo] password for user:
SQL dosyası başarıyla yürütülürse, çıkışınız aşağıdaki örneğe benzer:
Running *.sql* file 'createuser.sql'...
Successfully executed the file.
Closed the connection to mysql20221201
Yönetilen kimlik myManagedIdentity, identity-contoso kullanıcı adıyla kimlik doğrulaması yaparken artık veritabanına erişime sahiptir.
Sunucuya artık bu IP adresinden erişmek istemiyorsanız, aşağıdaki komutu kullanarak güvenlik duvarı kuralını kaldırabilirsiniz:
az mysql flexible-server firewall-rule delete \
--resource-group $RESOURCE_GROUP_NAME \
--name $MYSQL_NAME \
--rule-name AllowCurrentMachineToConnect \
--yes
Son olarak, sonraki bölümde kullandığınız bağlantı dizesini almak için aşağıdaki komutu kullanın:
export CONNECTION_STRING="jdbc:mysql://${MYSQL_NAME}.mysql.database.azure.com:3306/${DATABASE_NAME}?useSSL=true"
echo ${CONNECTION_STRING}
Azure VM'lerinde IBM WebSphere Uygulama Sunucusu için parolasız veritabanı bağlantısı yapılandırma
Devam etmeden önce, oturum açmak ve bu makaleyi tamamlamak için kullandığınız Azure kimliğinin geçerli abonelikte Sahip rolüne veya geçerli abonelikteki Katkıda Bulunan ve Kullanıcı Erişimi Yöneticisi rollerine sahip olduğundan emin olun. Azure rollerine genel bakış için bkz. Azure rol tabanlı erişim denetimi (Azure RBAC) nedir? Oracle WebLogic market teklifinin gerektirdiği belirli roller hakkında ayrıntılı bilgi için bkz . Azure yerleşik rolleri.
Bu bölümde, IBM WebSphere Application Server için Azure Market tekliflerini kullanarak parolasız veri kaynağı bağlantısını yapılandırma işlemi gösterilmektedir.
İlk olarak, bir teklif dağıtma işlemine başlayın. Aşağıdakiler parolasız veritabanı bağlantılarını destekler:
- WebSphere Traditional VM'de
- VM'de WebSphere Geleneksel kümesi. Daha fazla bilgi için bkz . Hızlı Başlangıç: Azure Sanal Makineler'de WebSphere Uygulama Sunucusu Ağ Dağıtımı kümesini dağıtma.
Özellikleri etkinleştirmek istiyorsanız Temel bilgiler bölmesine ve diğer bölmelere gerekli bilgileri girin. Veritabanı bölmesine ulaştığınızda, aşağıdaki adımlarda gösterildiği gibi parolasız yapılandırmayı girin:
- Veritabanına bağlanın mı? için Evet'i seçin.
- Bağlantı ayarları'nın altında Veritabanı türünü seçin için açılan menüyü açın ve ardından Azure SQL'i (parolasız bağlantı desteğiyle) seçin.
- JNDI adı için testpasswordless veya beklenen değerinizi girin.
- DataSource Bağlantı Dizesi için, son bölümde elde ettiğiniz bağlantı dizesi girin.
- Parolasız veri kaynağı bağlantısını kullan seçin.
- Kullanıcı tarafından atanan yönetilen kimlik için önceki adımda oluşturduğunuz yönetilen kimliği seçin. Bu örnekte adı myManagedIdentity.
- Add (Ekle) seçeneğini belirleyin.
Bağlantı ayarları bölümü aşağıdaki ekran görüntüsüne benzer olmalıdır:
Veritabanı bağlantısını doğrulama
Teklif dağıtımı hatasız tamamlanırsa veritabanı bağlantısı başarıyla yapılandırılır.
Dağıtım tamamlandıktan sonra, Yönetici konsolu URL'sini bulmak için Azure portalında bu adımları izleyin.
- WebSphere'i dağıtdığınız kaynak grubunu bulun.
- Ayarlar'ın altında Dağıtımlar'ı seçin.
- En uzun Süreye sahip dağıtımı seçin. Bu dağıtım listenin en altında olmalıdır.
- Çıkışlar’ı seçin.
- Tümleşik Çözümler Konsolu'nun URL'si adminSecuredConsole çıkışının değeridir.
- adminSecuredConsole çıkış değişkeninin değerini kopyalayın.
- Değeri tarayıcı adres çubuğuna yapıştırın ve Tümleşik Çözümler Konsolu'nun oturum açma sayfasını açmak için Enter tuşuna basın.
Veritabanı bağlantısını doğrulamak için aşağıdaki adımları kullanın:
- Temel Bilgiler bölmesinde sağladığınız kullanıcı adı ve parolayla Tümleşik Çözümler Konsolu'nda oturum açın.
- Gezinti bölmesinde Kaynaklar'ı ve ardından JDBC'yi genişletin.
- Veri kaynakları'ı seçin.
- Veritabanı sekmesine girdiğiniz değerle eşleşen JNDI adı değerini içeren satırın yanındaki onay kutusunu seçin.
- Bağlantıyı test et'i seçin.
- Şuna benzer bir şey belirten bir ileti görmeniz gerekir:
The test connection operation for data source dataSource-sqlserver on server server1 at node was0aef4a-vmNode01 was successful.
Aşağıdaki ekran görüntüsünde ilgili kullanıcı arabirimi öğeleri vurgulanır:
Kaynakları temizle
Bu kaynaklara ihtiyacınız yoksa, aşağıdaki komutları kullanarak bunları silebilirsiniz:
az group delete --name ${RESOURCE_GROUP_NAME}
az group delete --name <resource-group-name-that-deploys-the-offer>
Sonraki Adımlar
Şu bağlantıları izleyerek AKS, Azure RedHat OpenShift veya sanal makinelerde WebSphere Uygulama Sunucusu çalıştırma hakkında daha fazla bilgi edinin: