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.
ŞUNLARA UYGULANIR:
Azure Data Factory
Azure Synapse Analytics
İpucu
Microsoft Fabric'daki
Web Etkinliği, bir Azure Data Factory veya Synapse işlem hattından özel rest uç noktasını çağırmak için kullanılabilir. Etkinlik tarafından kullanılacak ve erişilecek veri kümelerini ve bağlı hizmetleri geçirebilirsiniz.
Not
Web Etkinliği, özel bir sanal ağda barındırılan URL'leri çağırmak için ve şirket içinde barındırılan tümleştirme çalışma zamanı kullanılarak desteklenir. Tümleştirme çalışma zamanı, URL uç noktasına doğrudan erişime sahip olmalıdır.
Not
Desteklenen çıktı yanıtı yük boyutu üst sınırı 4 MB'tır.
Kullanıcı arabirimiyle Web etkinliği oluşturma
İşlem hattında Web etkinliği kullanmak için aşağıdaki adımları tamamlayın:
İşlem hattı Etkinlikleri bölmesinde Web'i arayın ve bir Web etkinliğini işlem hattı tuvaline sürükleyin.
Tuvalde henüz seçili değilse yeni Web etkinliğini ve ayrıntılarını düzenlemek için Ayarlar sekmesini seçin.
Sabit bir URL dizesi veya dinamik ifadeler, işlevler, sistem değişkenleri veya başka etkinliklerden gelen çıktılar arasında herhangi bir bileşim olabilecek bir URL belirtin. İstekle birlikte gönderilecek diğer ayrıntıları sağlayın.
Etkinliğin çıkışını başka herhangi bir etkinliğe giriş olarak kullanın ve hedef etkinlikte dinamik içeriğin desteklendiği her yerde çıkışa başvurun.
Sözdizimi
{
"name":"MyWebActivity",
"type":"WebActivity",
"typeProperties":{
"method":"Post",
"url":"<URLEndpoint>",
"httpRequestTimeout": "00:01:00"
"connectVia": {
"referenceName": "<integrationRuntimeName>",
"type": "IntegrationRuntimeReference"
}
"headers":{
"Content-Type":"application/json"
},
"authentication":{
"type":"ClientCertificate",
"pfx":"****",
"password":"****"
},
"datasets":[
{
"referenceName":"<ConsumedDatasetName>",
"type":"DatasetReference",
"parameters":{
...
}
}
],
"linkedServices":[
{
"referenceName":"<ConsumedLinkedServiceName>",
"type":"LinkedServiceReference"
}
]
}
}
Tür özellikleri
| Özellik | Açıklama | İzin verilen değerler | Zorunlu |
|---|---|---|---|
| Adı | Web etkinliğinin adı | String | Yes |
| Tip | WebActivity olarak ayarlanmalıdır. | String | Yes |
| yöntemi | Hedef uç nokta için REST API yöntemi. | Dize. Desteklenen Türler: "GET", "POST", "PUT", "PATCH", "DELETE" |
Yes |
| url | Hedef uç nokta ve yol | String (veya resultType'i string olan bir ifade). Uç noktadan yanıt almazsa etkinlik, 1 dakika içinde hata vererek zaman aşımına uğrayacak. httpRequestTimeout özelliğini güncelleştirerek bu yanıt zaman aşımını 10 dk'ya kadar artırabilirsiniz | Yes |
| HTTP İstek Zaman Aşımı | Yanıt zaman aşımı süresi | hh:mm:ss formatında en yüksek değer 00:10:00 olarak. Açıkça belirtilmezse varsayılan değer 00:01:00'dır | Hayır |
| üst bilgiler | İsteğe gönderilen üst bilgiler. Örneğin, bir isteğin dilini ve türünü ayarlamak için: "headers" : { "Accept-Language": "en-us", "Content-Type": "application/json" }. |
Dize (veya dizenin resultType değeriyle ifade) | Hayır |
| gövde | Uç noktaya gönderilen yükü temsil eder. | String (veya resultType'i string olan bir ifade). İstek yükü şemasını İstek yükü şeması bölümünde bulabilirsiniz. |
POST/PUT/PATCH yöntemleri için gereklidir. DELETE yöntemi için isteğe bağlı. |
| kimlik doğrulaması | Uç noktayı çağırmak için kullanılan kimlik doğrulama yöntemi. Desteklenen Türler şunlardır: "Temel, İstemci Sertifikası, Sistem Tarafından Atanan Yönetilen Kimlik, Kullanıcı Tarafından Atanan Yönetilen Kimlik, Hizmet Sorumlusu." Daha fazla bilgi için kimlik doğrulaması bölümüne bakın. Kimlik doğrulaması gerekmiyorsa bu özelliği hariç tutun. | Dize (veya dizenin resultType değeriyle ifade) | Hayır |
| turnOffAsync | HTTP 202 Yanıtının yanıt üst bilgisinde konum alanında HTTP GET çağrısını devre dışı bırakma seçeneği. True olarak ayarlanırsa, yanıt üst bilgisinde verilen http konumunda HTTP GET çağrısını durdurur. False olarak ayarlanırsa http yanıt üst bilgilerinde verilen konumda HTTP GET çağrısını çağırmaya devam eder. | İzin verilen değerler false (varsayılan) ve true değerleridir. | Hayır |
| Sertifika Doğrulamasını Devre Dışı Bırak | Sunucu tarafı sertifika doğrulamasını kaldırır (standart CA sertifikası kullanmayan güvenilir bir sunucuya bağlanmıyorsanız önerilmez). | İzin verilen değerler false (varsayılan) ve true değerleridir. | Hayır |
| veri kümeleri | Uç noktaya geçirilen veri kümelerinin listesi. | Veri seti referansları dizisi. Boş bir dizi olabilir. | Yes |
| linkedServices | Uç noktaya geçirilen bağlı hizmetlerin listesi. | Bağlı hizmet başvuruları dizisi. Boş bir dizi olabilir. | Yes |
| connectVia | Veri deposuna bağlanmak için kullanılacak tümleştirme çalışma zamanı . Azure tümleştirme çalışma zamanını veya şirket içinde barındırılan tümleştirme çalışma zamanını (veri deponuz özel bir ağdaysa) kullanabilirsiniz. Bu özellik belirtilmezse, hizmet varsayılan Azure tümleştirme çalışma zamanını kullanır. | Entegrasyon çalışma zamanı referansı. | Hayır |
Not
Web etkinliğinin çağırdığı REST uç noktaları JSON türünde bir yanıt döndürmelidir. Uç noktadan yanıt almazsa etkinlik, 1 dakika içinde hata vererek zaman aşımına uğrayacak. Asenkron İstek-Cevap deseni'ni destekleyen uç noktalar için, web etkinliği zaman aşımına uğramadan (7 güne kadar) ya da uç noktaların işin tamamlandığını bildirmesine kadar beklemeye devam eder.
Aşağıdaki tabloda JSON içeriğinin gereksinimleri gösterilmektedir:
| Değer türü | İstek içeriği | Yanıt gövdesi |
|---|---|---|
| JSON nesnesi | Desteklenir | Desteklenir |
| JSON dizisi | Destekleniyor (Şu anda JSON dizileri bir hatanın sonucu olarak çalışmıyor. Bir düzeltme devam ediyor.) |
Desteklenmeyen |
| JSON değeri | Desteklenir | Desteklenmeyen |
| JSON olmayan tür | Desteklenmeyen | Desteklenmeyen |
Kimlik Doğrulaması
Aşağıda web etkinliğinde desteklenen kimlik doğrulama türleri yer almaktadır.
Hiçbiri
Kimlik doğrulaması gerekmiyorsa "authentication" özelliğini eklemeyin.
Temel
Temel kimlik doğrulamasıyla kullanılacak kullanıcı adını ve parolayı belirtin.
"authentication":{
"type":"Basic",
"username":"****",
"password":"****"
}
İstemci sertifikası
PFX dosyasının base64 ile kodlanmış içeriğini ve parolasını belirtin.
"authentication":{
"type":"ClientCertificate",
"pfx":"****",
"password":"****"
}
Sertifikanın bir x509 sertifikası olması gerekir. PFX dosyasına dönüştürme için sık kullandığınız yardımcı programı kullanabilirsiniz. Temel 64 kodlaması için aşağıdaki PowerShell kod parçacığını kullanabilirsiniz.
$fileContentBytes = get-content 'enr.dev.webactivity.pfx' -AsByteStream
[System.Convert]::ToBase64String($fileContentBytes) | Out-File ‘pfx-encoded-bytes.txt’
Yönetilen Kimlik
Veri fabrikası veya Synapse çalışma alanı örneği için yönetilen kimlik kullanılarak erişim belirtecinin isteneceği kaynak uri'sini belirtin. Azure Kaynak Yönetimi API'sini çağırmak için https://management.azure.com/ kullanın. Yönetilen kimliklerin nasıl çalıştığı hakkında daha fazla bilgi için Azure kaynaklara yönelik yönetilen kimliklere genel bakış sayfasına bakın.
"authentication": {
"type": "MSI",
"resource": "https://management.azure.com/"
}
Not
Veri fabrikanız veya Synapse çalışma alanınız bir git deposuyla yapılandırılmışsa, temel veya istemci sertifikası kimlik doğrulamasını kullanmak için kimlik bilgilerinizi Azure Key Vault içinde depolamanız gerekir. Hizmet, parolaları git'te depolamaz.
Hizmet sorumlusu
İstemci sırrı için güvenli bir dize kullanarak kiracı kimliğini, hizmet sorumlusu kimliğini ve hizmet sorumlusu anahtarını belirtin.
"authentication": {
"type": "ServicePrincipal",
"tenant": "your_tenant_id",
"servicePrincipalId": "your_client_id",
"servicePrincipalKey": {
"type": "SecureString",
"value": "your_client_secret"
},
"resource": "https://management.azure.com/"
}
İstek veri yükü şeması
POST/PUT yöntemini kullandığınızda gövde özelliği uç noktaya gönderilen yükü temsil eder. Yükün bir parçası olarak bağlı hizmetleri ve veri kümelerini geçirmek mümkündür. Yükün şeması aşağıdadır:
{
"body": {
"myMessage": "Sample",
"datasets": [{
"name": "MyDataset1",
"properties": {
...
}
}],
"linkedServices": [{
"name": "MyStorageLinkedService1",
"properties": {
...
}
}]
}
}
Örnek
Bu örnekte, işlem hattındaki web etkinliği bir REST uç noktası çağırır. Azure SQL bağlantılı hizmeti ve Azure SQL veri kümesini uç noktaya aktarır. REST uç noktası, mantıksal SQL sunucusuna bağlanmak için Azure SQL connection string kullanır ve SQL server örneğinin adını döndürür.
İşlem hattı tanımı
{
"name": "<MyWebActivityPipeline>",
"properties": {
"activities": [
{
"name": "<MyWebActivity>",
"type": "WebActivity",
"typeProperties": {
"method": "Post",
"url": "@pipeline().parameters.url",
"headers": {
"Content-Type": "application/json"
},
"authentication": {
"type": "ClientCertificate",
"pfx": "*****",
"password": "*****"
},
"datasets": [
{
"referenceName": "MySQLDataset",
"type": "DatasetReference",
"parameters": {
"SqlTableName": "@pipeline().parameters.sqlTableName"
}
}
],
"linkedServices": [
{
"referenceName": "SqlLinkedService",
"type": "LinkedServiceReference"
}
]
}
}
],
"parameters": {
"sqlTableName": {
"type": "String"
},
"url": {
"type": "String"
}
}
}
}
İşlem hattı parametre değerleri
{
"sqlTableName": "department",
"url": "https://adftes.azurewebsites.net/api/execute/running"
}
Web hizmeti uç noktası kodu
[HttpPost]
public HttpResponseMessage Execute(JObject payload)
{
Trace.TraceInformation("Start Execute");
JObject result = new JObject();
result.Add("status", "complete");
JArray datasets = payload.GetValue("datasets") as JArray;
result.Add("sinktable", datasets[0]["properties"]["typeProperties"]["tableName"].ToString());
JArray linkedServices = payload.GetValue("linkedServices") as JArray;
string connString = linkedServices[0]["properties"]["typeProperties"]["connectionString"].ToString();
System.Data.SqlClient.SqlConnection sqlConn = new System.Data.SqlClient.SqlConnection(connString);
result.Add("sinkServer", sqlConn.DataSource);
Trace.TraceInformation("Stop Execute");
return this.Request.CreateResponse(HttpStatusCode.OK, result);
}
İlgili içerik
Desteklenen diğer denetim akışı etkinliklerine bakın: