Email Audit API ile e-posta izlemeyi ayarlamak için yönetici, denetçinin belirli bir kullanıcının gönderdiği ve aldığı e-postaların bir kopyasını ek olarak alması için bir tarih aralığı belirler. Günlük maksimum izleyici oluşturma ve silme isteği sayısı 1.000'dir. Bu sınır alan başına geçerlidir ve gün içinde herhangi bir yönetici tarafından yapılan tüm istekleri içerir.
İzlenen e-posta senaryosunda üç tür kullanıcı bulunur:
Yönetici: Herhangi bir alan yöneticisi, E-posta Denetleme API'sinin izleme kaynağını kullanarak bir e-posta izleyicisi oluşturabilir, alabilir, güncelleyebilir ve silebilir. Ayrıca, bir yönetici posta kutusunu indirmek için API'yi kullanabilir. Bu işlemler yalnızca yöneticinin kontrol ettiği alan içinde yapılabilir.
Kaynak kullanıcı: Kaynak kullanıcı, izleme hedefi kullanıcısı tarafından denetlenen iletileri alan veya gönderen kullanıcıdır. Kaynak kullanıcı olarak herhangi bir alan yöneticisi veya hesap kullanıcısı kullanılabilir. Kaynak kullanıcı, yönetici ve hedef kullanıcıyla aynı alanda olmalıdır.
Hedef kullanıcı: Hedef kullanıcı, denetlenen e-posta mesajlarını alan denetçidir.
- Gelen ve giden ekler, yönlendirilen iletiler ve mobil cihazlardan gönderilen e-posta iletileri de dahil olmak üzere tüm gelen ve giden e-posta iletilerinin gizli alıcı (Bcc) kopyalarını alır.
- İsteğe bağlı olarak, bir alan yöneticisi hedef kullanıcı için ek denetleme özellikleri etkinleştirebilir. İsteğe bağlı özellikler arasında, kaydedilen e-posta taslaklarının denetlenmesi ve alanın içinde veya dışında olabilecek diğer kullanıcılarla yapılan arşivlenmiş Hangouts sohbetlerinin denetlenmesi yer alır.
- Hedef kullanıcı, iletinin Bcc kopyasını alsa da Bcc ilişkilendirmesi, kaynak kullanıcının hesabında erişilebilen ileti üstbilgilerinde görünmez.
- Denetlenen her e-posta iletisi, hedef kullanıcıya e-posta eki olarak gönderilir. Ayrıca alan yöneticisi, bu iletileri tam e-posta iletisi veya yalnızca ileti üstbilgileri olacak şekilde yapılandırabilir.
- Bu hedef kullanıcının, izlenen alanda etkin bir e-posta hesabı olmalıdır. Bu, yönetici ve kaynak kullanıcıyla ilişkili alanla aynı olmalıdır.
- Hedef kullanıcı, alandaki bir yönetici veya kullanıcı olabilir. Ayrıca, bu hedef kullanıcı, rolleri değiştirerek kaynak kullanıcı olabilir. Bu durumda, ilk hedef kullanıcıya gönderilen tüm denetlenmiş e-posta iletilerinin kopyalarını alan başka bir hedef kullanıcı tarafından denetlenir.
- Bir alan yöneticisi, benzersiz bir "hedef kullanıcı-kaynak kullanıcı" çifti için denetlenmiş bir e-posta monitörü oluşturur. Diğer bir deyişle, denetim ilişkisi bir hedef kullanıcıdan bir kaynak kullanıcıya şeklindedir. Her denetim, API izleme kaynağı kullanılarak yapılır. Hedef kullanıcı, birden fazla API izleyicisi kullanarak alandaki birçok kullanıcıyı denetleyebilir. Ayrıca, birden fazla API izleyicisi kullanılarak birçok hedef kullanıcı tek bir kaynak kullanıcıyı denetleyebilir.
- Bir "hedef kullanıcı - kaynak kullanıcı" çifti için ek bir API izleyicisi oluşturulursa veya mevcut bir API izleyicisi güncellenirse en son oluşturulan izleyici, bu çift için önceden var olan tüm izleyicilerin yerini alır. Temel olarak, API izleyicilerini bu şekilde güncelleyebilirsiniz. İzleyici güncelleme hakkında daha fazla bilgi için E-posta izleyicisini güncelleme başlıklı makaleyi inceleyin.
E-posta izleme işlemi oluşturma
E-posta izleme işlemi oluşturmak için e-posta izleme kaynağıyla birlikte aşağıdaki POST isteğini gönderin:
POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME
Aşağıdakini değiştirin:
DOMAIN_NAME: Google Workspace alan adı (ör. example.com).SOURCE_USERNAME: İzlemek istediğiniz kullanıcı adı.
POST isteği aşağıdaki Content-type başlığını içerir:
Content-type: application/atom+xml
E-posta izleme isteğinde kullanılacak parametrelerin tam listesi için Kaynaklar: monitor bölümüne bakın.
Yeni bir monitör oluşturma örneği
Örnekte aşağıdaki parametreler kullanılmaktadır:
- Denetlenecek kullanıcı
amal@example.com. destUserNameartıkizumi.beginDateartıkJune 15, 2022, 00:00 hours.endDateartıkJune 30, 2022, 23:20 hours.incomingEmailMonitorLevelartıkFULL_MESSAGE.outgoingEmailMonitorLevelartıkHEADER_ONLY.draftMonitorLevelartıkFULL_MESSAGE.chatMonitorLevelartıkFULL_MESSAGE.
Protokol
POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal <atom:entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'> <apps:property name='destUserName' value='izumi'/> <apps:property name='beginDate' value='2022-06-15 00:00'/> <apps:property name='endDate' value='2022-06-30 23:20'/> <apps:property name='incomingEmailMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='outgoingEmailMonitorLevel' value='HEADER_ONLY'/> <apps:property name='draftMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='chatMonitorLevel' value='FULL_MESSAGE'/> </atom:entry>
İşlem başarılı olursa sunucu, 201 CREATED durum kodunu ve yeni izleme ayarlarını gösteren entry öğesini içeren bir AtomPub girişi döndürür:
<entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'> <id>https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/id</id> <updated>2022-04-17T15:02:45.646Z</updated/> <link rel='self' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/id'/> <link rel='edit' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/id'/> <apps:property name='destUserName' value='izumi'/> <apps:property name='beginDate' value='2022-06-15 00:00'/> <apps:property name='endDate' value='2022-06-30 23:20'/> <apps:property name='incomingEmailMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='outgoingEmailMonitorLevel' value='HEADER_ONLY'/> <apps:property name='draftMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='chatMonitorLevel' value='FULL_MESSAGE'/> </entry>
Java
import java.util.Calendar; import com.google.gdata.client.appsforyourdomain.audit.AuditService; import com.google.gdata.data.appsforyourdomain.generic.GenericEntry; import com.google.gdata.client.appsforyourdomain.audit.MailMonitor; ... MailMonitor monitor = new MailMonitor(); Calendar beginDate = Calendar.getInstance(); beginDate.set(2022, Calendar.JUNE, 15, 0, 0) monitor.setBeginDate(beginDate.getTime()); Calendar endDate = Calendar.getInstance(); endDate.set(2022, Calendar.JUNE, 30, 23, 20); monitor.setEndDate(endDate.getTime()); monitor.setIncomingEmailMonitorLevel("FULL_MESSAGE"); monitor.setOutgoingEmailMonitorLevel("HEADER_ONLY"); monitor.setDraftMonitorLevel("FULL_MESSAGE"); monitor.setChatMonitorLevel("FULL_MESSAGE"); monitor.setDestUserName("izumi"); AuditService service = new AuditService("admin@example.com", "p@55w0rd", "example.com", "example.com-auditapp-v1"); GenericEntry entry = service.createMailMonitor("amal", monitor);
.NET
using System; using Google.GData.Apps; using Google.GData.Extensions.Apps; ... MailMonitor monitor = new MailMonitor(); monitor.BeginDate = new DateTime(2022, 6, 15); monitor.EndDate = new DateTime(2022, 6, 30, 23, 20, 0); monitor.IncomingEmailMonitorLevel = MonitorLevel.FULL_MESSAGE; monitor.OutgoingEmailMonitorLevel = MonitorLevel.HEADER_ONLY; monitor.DraftMonitorLevel = MonitorLevel.FULL_MESSAGE; monitor.ChatMonitorLevel = MonitorLevel.FULL_MESSAGE; monitor.DestinationUserName = "izumi"; AuditService service = new AuditService("example.com", "example.com-auditapp-v1"); service.setUserCredentials("admin@example.com", "p@55w0rd"); MailMonitor monitorEntry = service.CreateMailMonitor("amal", monitor);
E-posta izleme işlemini güncelleme
Aynı kaynak kullanıcı ve hedef kullanıcıyla bir izleyici güncellenirken ilk izleyicinin özellik ayarları yeni ayarlar ile değiştirilir.
Bir e-posta izleyicideki denetim yapılandırmasını güncellemek için izleyici feed'inin URI'sine bir POST isteği gönderin ve Authorization üstbilgisini ekleyin:
POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME
Aşağıdakini değiştirin:
DOMAIN_NAME: Google Workspace alan adı (ör. example.com).SOURCE_USERNAME: Güncellemek istediğiniz e-posta izleyicinin kullanıcı adı.
E-posta izleme işlemini güncelleme örneği
Bu örnekte, e-posta izleyici oluşturma örneğinde oluşturulan izleyici, gerekli özellik endDate ve isteğe bağlı özellik chatMonitorLevel güncellenerek güncellenir. Bu örnekte aşağıdaki parametreler kullanılmaktadır:
- Yeni
endDatedeğeriAugust 30, 2022, 23:20 hours. chatMonitorLevelartıkHEADER_ONLY.- Denetlenecek kullanıcı
amal@example.comolarak kalır. destUserName,izumiolarak kalır.
Güncellenmeyen monitör özellikleri varsayılan değerlerine geri döner. Örneğin, bu örnekte incomingEmailMonitorLevel ve outgoingEmailMonitorLevel özellikleri FULL_MESSAGE'ye, draftMonitorLevel özelliği ise NONE'ye geri döner.
Protokol
POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal
<atom:entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'>
<apps:property name='destUserName' value='izumi'/>
<apps:property name='endDate' value='2022-08-30 23:20'/>
<apps:property name='chatMonitorLevel' value='HEADER_ONLY'/>
</atom:entry>İşlem başarılı olursa sunucu 201 CREATED durum kodunu ve güncellenen entry öğelerini içeren bir AtomPub girişi döndürür. Güncellenmeyen ve yanıtta gösterilmeyen özellikler varsayılan değerlerine geri döner.
<entry> <entry xmlns='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'> <id>https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/izumi</id> <updated>2022-08-20T00:28:57.319Z</updated> <link rel='self' type='application/atom+xml' href="https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/izumi" /> <link rel='edit' type='application/atom+xml' href="https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/izumi" /> <apps:property name='chatMonitorLevel' value='HEADER_ONLY' /> <apps:property name='destUserName' value='izumi' /> <apps:property name='endDate' value='2022-08-30 23:20' /> </entry>
Java
import java.util.Calendar; import com.google.gdata.client.appsforyourdomain.audit.AuditService; import com.google.gdata.client.appsforyourdomain.audit.MailMonitor; import com.google.gdata.data.appsforyourdomain.generic.GenericEntry; ... MailMonitor monitor = new MailMonitor(); Calendar endDate = Calendar.getInstance(); endDate.set(2022, Calendar.AUGUST, 30, 23, 20); monitor.setEndDate(endDate.getTime()); monitor.setChatMonitorLevel("HEADER_ONLY"); monitor.setDestUserName("izumi"); AuditService service = new AuditService("admin@example.com", "p@55w0rd", "example.com", "example.com-auditapp-v1"); GenericEntry entry = service.createMailMonitor("amal", monitor);
.NET
using System; using Google.GData.Apps; using Google.GData.Extensions.Apps; ... MailMonitor monitor = new MailMonitor(); monitor.EndDate = new DateTime(2022, 8, 30, 23, 20, 0); monitor.ChatMonitorLevel = MonitorLevel.HEADER_ONLY; monitor.DestinationUserName = "izumi"; AuditService service = new AuditService("example.com", "example.com-auditapp-v1"); service.setUserCredentials("admin@example.com", "p@55w0rd"); MailMonitor monitorEntry = service.CreateMailMonitor("amal", monitor);
Kaynak kullanıcının tüm e-posta monitörlerini alma
Bir kaynak kullanıcıyla ilişkili tüm izleyicileri almak için tarih için UTC biçimini kullanarak izleyici feed'i URI'sine bir HTTP GET isteği gönderin ve Authorization başlığını ekleyin:
GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME
Aşağıdakini değiştirin:
DOMAIN_NAME: Google Workspace alan adı (ör. example.com).SOURCE_USERNAME: Almak istediğiniz e-posta izleyicinin kullanıcı adı.
Bu işlemin istek gövdesinde parametre olmadığından XML gövdesi boştur.
Tüm e-posta monitörlerini alma örneği
Bu örnek, amal@example.com kullanıcısı için oluşturulan tüm monitörleri alır:
Protokol
GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal
İşlem başarılı olursa sunucu bir 201 CREATED durum kodu ve iki hedef kullanıcının ayarlarını (izumi@example.com,
taylor@example.com) gösteren iki monitör için entry öğelerini içeren bir AtomPub feed'i döndürür.
<feed xmlns:atom='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:apps='http://schemas.google.com/apps/2006'> <id>https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal</id> <updated>2010-03-17T15:29:21.064Z</updated> <link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal'/> <link rel='http://schemas.google.com/g/2005#post' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal'/> <link rel='self' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal'/> <openSearch:startIndex>1</openSearch:startIndex> <entry> <id>https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/izumi</id> <updated>2022-04-17T15:29:21.064Z</updated> <link rel='self' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/izumi&'/> <link rel='edit' type='application/atom+xml' href='https://apps-apis.google.com/feeds/compliance/audit/mail/monitor/example.com/amal/izumi&'/> <apps:property name='requestId' value='53156'/> <apps:property name='destUserName' value='izumi'/> <apps:property name='beginDate' value='2022-06-15 00:00'/> <apps:property name='endDate' value='2022-06-30 23:20'/> <apps:property name='incomingEmailMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='outgoingEmailMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='draftMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='chatMonitorLevel' value='FULL_MESSAGE'/> </entry> <entry> <id>>https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/taylor</id> <updated>2022-05-17T15:29:21.064Z</updated> <link rel='self' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/taylor'/> <link rel='edit' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/taylor'/> <apps:property name='requestId' value='22405'/> <apps:property name='destUserName' value='taylor'/> <apps:property name='beginDate' value='2022-06-20 00:00'/> <apps:property name='endDate' value='2022-07-30 23:20'/> <apps:property name='incomingEmailMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='outgoingEmailMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='draftMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='chatMonitorLevel' value='FULL_MESSAGE'/> </entry> </feed>
Java
import com.google.gdata.client.appsforyourdomain.audit.AuditService; import com.google.gdata.data.appsforyourdomain.generic.GenericFeed; ... AuditService service = new AuditService("admin@example.com", "p@55w0rd", "example.com", "example.com-auditapp-v1"); GenericFeed feed = service.retrieveMonitors("amal");
.NET
using System; using System.Collections.Generic; using Google.GData.Apps; using Google.GData.Extensions.Apps; ... AuditService service = new AuditService("example.com", "example.com-auditapp-v1"); service.setUserCredentials("admin@example.com", "p@55w0rd"); GenericFeed<MailMonitor> monitors = service.RetrieveMailMonitors("amal");
E-posta izleme işlemini silme
Bir e-posta izleme işlemini silmek için izleme feed'inin silme URI'sine bir HTTP DELETE isteği gönderin ve Authorization üstbilgisini ekleyin:
DELETE https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME/DESTINATION_USERNAME
Aşağıdakini değiştirin:
DOMAIN_NAME: Google Workspace alan adı (ör. example.com).SOURCE_USERNAME: Silmek istediğiniz e-posta izleyicinin kullanıcı adı.DESTINATION_USERNAME: Denetlenmiş e-posta mesajlarını alan denetçi.
E-posta izleme işlemini silme örneği
Bu örnekte, amal@example.com kullanıcısı için oluşturulan ve destinationUserName olarak izumi olan izleyiciler silinir.
Protokol
DELETE https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/izumi
Java
import com.google.gdata.client.appsforyourdomain.audit.AuditService; ... AuditService service = new AuditService("admin@example.com", "p@55w0rd", "example.com", "example.com-auditapp-v1"); service.deleteMonitor("amal", "izumi");
.NET
using System; using Google.GData.Apps; using Google.GData.Extensions.Apps; ... AuditService service = new AuditService("example.com", "example.com-auditapp-v1"); service.setUserCredentials("admin@example.com", "p@55w0rd"); service.DeleteMailMonitor("amal", "izumi");